VMware Cloud Community
Vasumathy
Contributor
Contributor

VSphere 6.0 not detecting SSD/HDD disks as local - Unable to claim disks in VSAN automatic mode

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.

0 Kudos
4 Replies
zdickinson
Expert
Expert

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.

0 Kudos
Jasemccarty
Immortal
Immortal

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...

Jase McCarty - @jasemccarty
0 Kudos
paudieo
VMware Employee
VMware Employee

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

0 Kudos
Vasumathy
Contributor
Contributor

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?




0 Kudos