In this new vSphere environment, I noticed that the boot times were terribly slow. Some of the symptoms include:
- boot screen stalls at: vmw_satp_eva loaded successfully
- boot screen stalls at: vmfs3 loaded successfully. Running usbarbitrator start
- slow HBA rescan times
Having come across a similar issue before, I immediately checked whether the perennially reserved flags were set to true for all RDM LUNs. As expected, they were set to false so I had to reconfigure them for all the hosts in the cluster. Previously, I was dealing with a small amount of RDM LUNs so it was possible to SSH into each host to reconfigure the perennially reserved flags but due to the large number of hosts in the cluster and the large number of RDM mappings, it was necessary to script it. The following script will set the perennially reserved flag to true for all RDMs in the cluster:
Connect-VIServer -Server "<vcenter name>"
$VMcluster = Get-Cluster "<cluster name>" | Get-VMHost
foreach ($VMHost in $VMcluster)
$myesxcli= get-esxcli -VMHost $VMHost
$myesxcli.storage.core.device.setconfig($false, "<first naa.id>", $true)
$myesxcli.storage.core.device.setconfig($false, "<second naa.id>", $true)
$myesxcli.storage.core.device.setconfig($false, "<etc etc>", $true)
Disconnect-VIServer -Server "<vcenter name>"
After running the script and setting all the flags, the hosts rebooted much more quickly.