EHC 4.1: ESXi Host Migration Process (vCenter Host Migration with ViPR Export Groups)

This procedure details the steps to execute in order to remove an ESXi host from a source ViPR Export Group and add to an existing target Export Group.

Note: this procedure applies to ViPR 3.0 and below, ViPR 3.5 introduces a more automated procedure which I intend to cover in a future post.

Host Removal – remove ESXi Host from a ViPR Export Group

Please ensure the current ViPR configuration is in a known good state before proceeding and that the ViPR database is edited where required to bring it in synch with the live environment. Contact DellEMC support to assist with any ViPR database remediations required.

Note: Ensure the version of SMI-S complies with the EHC ESSM stated version.

The following steps detail the procedure for removing a host from a vSphere ESXi cluster in vCenter and utilizing the ViPR CLI to remove the same host from the cluster Export Group. Continue reading

Cisco UCS – Determining ESXi FNIC&ENIC via PowerCLI

The following script allows the user to retrieve a listing of Network (ENIC) & Storage (FNIC) firmware drivers installed on Cisco UCS blades at a per vSphere cluster level. You may download the ‘Cisco_FNIC_ENIC.ps1‘ script here: Cisco_FNIC_ENIC.ps1 (Remove the .doc extension).

The script will begin by prompting you to enter the vCenter IP Address, username and password. A list of all the available clusters residing in vCenter will be returned. Followed by a prompt to enter the vSphere cluster name, from the cluster defined the script will retrieve a per ESXi listing of ENIC&FNIC firmware levels. The script will firstly prompt the user to enable SSH on all the hosts in the cluster:

UCS_FNIC_ENIC1

UCS_FNIC_ENIC2

 

Once you have completed the tasks on the hosts that required SSH Access, you may then return to the running script and type option ‘y’ in order to again disable SSH on all the hosts in the specified cluster:

UCS_FNIC_ENIC3

PowerCLI Script:

#######################################
# Confirm CISCO FNIC & ENIC Drivers
# Date: 2016-07-01
# Created by: David Ring
#######################################

###### vCenter Connectivity Details ######

Write-Host “Please enter the vCenter Host IP Address:” -ForegroundColor Yellow -NoNewline

$VMHost = Read-Host

Write-Host “Please enter the vCenter Username:” -ForegroundColor Yellow -NoNewline

$User = Read-Host

Write-Host “Please enter the vCenter Password:” -ForegroundColor Yellow -NoNewline

$Pass = Read-Host

Connect-VIServer -Server $VMHost -User $User -Password $Pass

###### Please enter the Cluster to check CISCO Versions #######

Write-Host “Clusters Associated with this vCenter:” -ForegroundColor Green

$VMcluster = ‘*’

ForEach ($VMcluster in (Get-Cluster -name $VMcluster)| sort)

{
Write-Host $VMcluster
}

Write-Host “Please enter the Cluster to lookup CISCO FNIC & ENIC Drivers:” -ForegroundColor Yellow -NoNewline

$VMcluster = Read-Host

###### Enabling SSH ######

Write-Host “Do you need to Enable SSH on the Cluster ESXi Hosts? ” -ForegroundColor Yellow -NoNewline

Write-Host ” Y/N:” -ForegroundColor Red -NoNewline

$SSHEnable = Read-Host

if ($SSHEnable -eq “y”) {

Write-Host “Enabling SSH on all hosts in your specified cluster:” -ForegroundColor Green

Get-Cluster $VMcluster | Get-VMHost | ForEach {Start-VMHostService -HostService ($_ | Get-VMHostService | Where {$_.Key -eq “TSM-SSH”})}

}

###### Confirm Driver Versions ######

Write-Host “Confirm CISCO FNIC & ENIC Drivers” -ForegroundColor Green

$hosts = Get-Cluster $VMcluster | Get-VMHost

forEach ($vihost in $hosts)

{

Write-Host -ForegroundColor Magenta “Gathering Driver versions on” $vihost

$esxcli = get-vmhost $vihost | Get-EsxCli

$esxcli.software.vib.list() | Where { $_.Name -like “net-enic”} | Select @{N=”VMHost”;E={$ESXCLI.VMHost}}, Name, Version

$esxcli.software.vib.list() | Where { $_.Name -like “scsi-fnic”} | Select @{N=”VMHost”;E={$ESXCLI.VMHost}}, Name, Version

}

###### Disabling SSH ######

Write-Host “Ready to Disable SSH? ” -ForegroundColor Yellow -NoNewline

Write-Host ” Y/N:” -ForegroundColor Red -NoNewline

$SSHDisable = Read-Host

if ($SSHDisable -eq “y”) {

Write-Host “Disabling SSH” -ForegroundColor Green

Get-Cluster $VMcluster | Get-VMHost | ForEach {Stop-VMHostService -HostService ($_ | Get-VMHostService | Where {$_.Key -eq “TSM-SSH”}) -Confirm:$FALSE}

}

 

Useful References:

https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1027206

http://www.cisco.com/c/en/us/support/docs/servers-unified-computing/ucs-b-series-blade-servers/115764-ucs-san-tshoot-00.html

EMC XtremIO: VMware ESXi Multi-Array Settings

The following table represents the recommended VMware vSphere ESXi host settings to be applied when an ESXi host(s) is connected to a single array and also details multi-array settings when at least one of the arrays is XtremIO.

The following information is referenced from EMC KB303782:
Recommended settings for VNX, VMAX, VPLEX, and XtremIO Colocation within VMware vSphere

XIO-MultiArray1

Notes: 

  1. Unless otherwise noted, the term VMAX refers to VMAX, VMAX3, and VMAX All Flash arrays
  2. The setting for FC Adapter policy IO Throttle Count can be set to the value specific to the  individual storage array type if connections are segregated. If the storage arrays are connected using the same vHBA s, use the multi-array setting in the table.
  3. The value for Disk.SchedNumReqOutstanding can be set on individual LUNs and therefore the value used should be specific to the underlying individual storage array type.

 

Related Post:

EMC XtremIO – Setting Disk.SchedNumReqOutstanding On vSphere 5.5 & 6.0 (PowerCLI)

EMC RecoverPoint for VMs ESXi Splitter Installation

The following steps detail the installation of the ‘EMC RecoverPoint for VMs’ Splitter VIB on ESXi hosts. The requirement is to Install the ‘RP for VMs’ splitter on each ESXi server hosting VMs that require RP protection. The recommendation is to allow 800MB of RAM per ESXi host for the RP4VM Splitter.

Note:

  • The use of VUM is not supported for the splitter install at present.
  • vRPAs must be deployed on an ESXi with a splitter.

Begin by ensuring that SSH is enabled on the ESXi hosts where the splitter will be installed in order to issue the ESXCLI cmds (After completing the splitter install then SSH may be disabled).
pp_remove_3

Using WINSCP to securely copy over the RP splitter VIB to /tmp:
RP4VM2
RP4VM3

Change directory to /tmp where the VIB has been copied to and ensure the VIB is present:
cd /tmp
ls -l
du -ah

RP4VM-4

RP4VM-5

Run the installation of the VIB file on ESXi host:
# esxcli software vib install –v kdriver_RPESX-00.4.3.0.1.0.c.122_md5_d4e7e95a89e74c7ca17be8f4344830b8.vib –no-sig-check

RP4VM-6

Retrieve the names of the packages installed on the vSphere host confirming the splitter installation:
# esxcli software vib list
# esxcli software vib list | grep RP
RP4VM-7
Note: VIB stands for vSphere Installation Bundle

 

PowerCLI Script:

##########################################################

# RP4VM Splitter Install Version 1.0

# Date: 2016-04-08

# Created by: David Ring

##########################################################

############# vCenter Connectivity Details ################

Write-Host “Please enter the vCenter Host IP Address:” -ForegroundColor Yellow -NoNewline

$VMHost = Read-Host

Write-Host “Please enter the vCenter Username:” -ForegroundColor Yellow -NoNewline

$User = Read-Host

Write-Host “Please enter the vCenter Password:” -ForegroundColor Yellow -NoNewline

$Pass = Read-Host

Connect-VIServer -Server $VMHost -User $User -Password $Pass

####### Please enter the Cluster to install RP4VM Splitter #######

Write-Host “Clusters Associated with this vCenter:” -ForegroundColor Green

$VMcluster = ‘*’

ForEach ($VMcluster in (Get-Cluster -name $VMcluster)| sort)

{

Write-Host $VMcluster

}

Write-Host “Please enter the Cluster to install RP4VM Splitter:” -ForegroundColor Yellow -NoNewline

$VMcluster = Read-Host

################# Enabling SSH ######################

Write-Host “Enabling SSH on all hosts in your specified cluster:” -ForegroundColor Green

Get-Cluster $VMcluster | Get-VMHost | ForEach {Start-VMHostService -HostService ($_ | Get-VMHostService | Where {$_.Key -eq “TSM-SSH”})}

############ Please enter the VMFS datastore #############

Write-Host “From the list provided – Please enter the VMFS datastore where the VIB has been uploaded to:” -ForegroundColor Green

$Datastore = ‘*’

ForEach ($Datastore in (Get-Datastore -name $Datastore)| sort)

{

Write-Host $Datastore

}

Write-Host “Please enter the VMFS datastore Name:” -ForegroundColor Yellow -NoNewline

$Datastore = Read-Host

########## Please enter the VIB name ##########

Write-Host “Please enter the VIB name e.g. kdriver_RPESX-00.4.3.0.1.0.c.122_md5_d4e7e95a89e74c7ca17be8f4344830b8.vib:” -ForegroundColor Yellow -NoNewline

$VIB = Read-Host

########## Installing RP4VM Splitter ###########

Write-Host “Installing RP4VM Splitter” -ForegroundColor Green

$hosts = Get-Cluster $VMcluster | Get-VMHost

foreach($vihost in $hosts)

{

$esxcli = get-vmhost $vihost | Get-EsxCli

$esxcli.software.vib.install($null,$false,$false,$false,$false,$true,$null,$null,”/vmfs/volumes/$Datastore/$VIB”)

}

###### Confirm Splitter Installed Successfully #######

Write-Host “Confirm Splitter Installed Successfully” -ForegroundColor Green

$hosts = Get-Cluster $VMcluster | Get-VMHost

forEach ($vihost in $hosts)

{

$esxcli = get-vmhost $vihost | Get-EsxCli

$esxcli.software.vib.list() | Where { $_.Name -like “*RP*”} | Select @{N=”VMHost”;E={$ESXCLI.VMHost}}, Name, Version

}

####### Enter each host in maintenance mode and reboot (use with caution!) #######

Write-Host “Enter all Cluster hosts in maintenance mode and reboot (use with caution!)” -ForegroundColor Yellow -NoNewline

Write-Host ” Y/N:” -ForegroundColor Red -NoNewline

$Reboot = Read-Host

if ($Reboot -eq “y”) {

$hosts = Get-Cluster $VMcluster | Get-VMHost

forEach ($vihost in $hosts)

{

$esxcli = get-vmhost $vihost | Get-EsxCli

$esxcli.system.maintenanceMode.set($true)

$esxcli.system.shutdown.reboot(10,”RP4VM Splitter”)

}

}

######## Disabling SSH #########

Write-Host “Disabling SSH” -ForegroundColor Green

Get-Cluster $VMcluster | Get-VMHost | ForEach {Stop-VMHostService -HostService ($_ | Get-VMHostService | Where {$_.Key -eq “TSM-SSH”}) -Confirm:$FALSE}

######### RP4VM INSTALLATION COMPLETE #########

Write-Host “RP4VM INSTALLATION COMPLETE” -ForegroundColor Green

EMC UIM/P – Editing The Database

Thank you @CliffCahill for providing this trick!

Ensure to back up the UIM/P(Unified Infrastructure Manager for Provisioning) DB before you begin. The following provides detailed steps on how to modify IP settings for ESXi host service offerings stored in the UIM DB.

Login to the UIM CLI via putty.
#To login to uim voyencedb database:
su – pgdba
psql voyencedb uim

To pull back all ESXi O/S settings:
select *, from ossettings;

To update the gateway for all service offerings / ESXi host:
update ossettings set gateway = ‘10.10.1.254’;

To update the IP address on individual ESXi host – id is listed when you run “select” command:
update ossettings set ip_address = ‘10.10.1.10’ where id = 2338;
update ossettings set ip_address = ‘10.10.1.11’ where id = 2302;