Hello,
We have in the past setup VSAN cluster using UCS servers as host nodes running ESXi 5.5
We have now upgraded to use ESXi 6 and we are using SAS disks for SSD/HDD disks.
What we have seen is that for these SAS disks isLocal is set to false even though they are local disks.
This is preventing us from being able to setup VSAN in automatic mode as these disks are not being claimed.
Note that though isLocal is set to false we see that Manual mode works and we are able to claim these disks.
Only automatic mode is not working.
If we run the esxcli commands to set the isLocal to true, then automatic mode also works.
The question is why are these SAS disks being detected as non-local by ESXi 6?
We want them to be detected as local disks correctly so that our end to end workflow for VSAN clustercreation from bare metal should work.
The disks are in JBOD mode.
I can't find the article, so not exactly coming from a point of authority here, but the gist was that's just the way it is sometimes depending on the disks, the controller, etc... And you have the fix/workaround which is to do manual or set them as local. Thank you, Zach.
Have you seen this?
It is dated, and for VSAN 5.5, but it might help.
VSAN: Local disks not showing up? Wipe your disks straight from the ESXi console - viktorious.nl - V...
Why do the disks turn up as isLocal = false?
historically you could potentially share a jbod if you had the correct jbod cabling to share disks between e.g. 2 hosts
This means you could create your VMFS volume and take advantage of a jbod as if it was a "shared" san
In that case how it would be achieved is using a sas adapter with external ports connected to a JBOD
this adapter would be interpretted as sas adapter who's disks are potentially sharable between hosts
to err on the side of caution , ESXi marks any disk hanging off some SAS adapters that **could** be used for shared disk function as a "remote disk"
basically that's why the devices show up as is local = false
I hope that makes sense?
Now if I understand it you want to automate the VSAN creation, so when you enable VSAN in automatic mode it grabs the disks , and obviously they must be marked local
Since you are automating anyway I guess you may might decide to do a scripted install of your ESXi 6.0 hosts first and run a post install script to find out all your disks that are marked as ls Local = False and change them to is local true,
I hope that's what the ask is here
This is my horrible untested script but gives you and idea how you could grab your disks that are marked Is Local: false
#for line in $(localcli storage core device list |grep "Is Local: false" -B 15 | grep naa | awk '{print $1}' | grep naa)
> do
> localcli storage nmp satp rule add --satp=VMW_SATP_LOCAL --device $line --option "enable_local"
> localcli storage core claiming unclaim --type=device --device $line
> localcli storage core claimrule load
> localcli storage core claimrule run
> localcli storage core claiming reclaim -d $line
>done
But the pro william lam has a kickstart script solve the is Local = false problem
using vdq -q output
here is his example
see http://www.virtuallyghetto.com/2014/07/esxi-5-5-kickstart-script-for-setting-up-vsan.html
HTH
Thanks for your response, that does help to some extent, however when we run the commands to manually do the reclaim, it occasionally errors out.
esxcli storage core claiming reclaim --device naa.5000c5007e5d4783
Unable to unclaim path vmhba2:C0:T14:L0 on device naa.5000c5007e5d4783. Some paths may be left in an unclaimed state. You will need to claim them manually using the appropriate commands or wait for periodic path claiming to reclaim them automatically.
The message does say that periodic path claiming will reclaim it later.
But when I am automating these commands, I cannot afford to get a failure message as that would mean that I need to halt the entire workflow.
Based on the link below, I do see that in 6.0 a new button has been added to Mark/Tag disks as Local.
ESXi is sometimes unable to determine whether certain SAS devices are local or remote, that’s why the button to tag selected disk as local
http://www.vladan.fr/vsphere-6-features-mark-tag-local-disk-ssd-disk/
Can you please let me know if there is a corresponding vsphere java API that I can invoke to mimic the functionality of this button?