VMware Cloud Community
abuzzi
Enthusiast
Enthusiast
Jump to solution

VCF 4.0 - HostPreparationException: No eligible cache disks found on ESXi

Hello,

I'm attempting to perform a bringup on 4x servers each equipped with:

- 1x 32gb flash (used to boot esxi)

- 2x 900gb SSD

Issue I'm getting is:

"Host preparation failed with the following errors: com.vmware.evo.sddc.common.hostservices.error.HostPreparationException: No eligible cache disks found on ESXi host"

From a google search it seems the VCF bringup requires two SSD with different size in order to use the smalled for cache and the other for capacity... is that true ?

If so... how can I make one disk appearing smaller ? (if ever possible)

Thx,

A.

1 Solution

Accepted Solutions
abuzzi
Enthusiast
Enthusiast
Jump to solution

Hello,

I finally passed the vsan showstopper.

Here my notes in case might be of any help to anyone facing same issue.

First use "vdq -q" and beeing sure one SSD has "IsCapacityFlash: 0" (this will be used for cache). Be also sure one disk (SSD or not SSD) has "IsCapacityFlash: 1".

Both disks has to have "State: Eligible for use by VSAN":

[root@esxi153:~] vdq -q

[

   {

      "Name"     : "naa.55cd2e4151461075",

      "VSANUUID" : "",

      "State"    : "Eligible for use by VSAN",

      "Reason"   : "None",

      "IsSSD"    : "1",

"IsCapacityFlash": "1",

      "IsPDL"    : "0",

      "Size(MB)" : "915715",

   "FormatType" : "512e",

   },

   {

      "Name"     : "naa.55cd2e415146402c",

      "VSANUUID" : "",

      "State"    : "Eligible for use by VSAN",

      "Reason"   : "None",

      "IsSSD"    : "1",

"IsCapacityFlash": "0",

      "IsPDL"    : "0",

      "Size(MB)" : "915715",

   "FormatType" : "512e",

   },

   {

      "Name"     : "mpx.vmhba32:C0:T0:L0",

      "VSANUUID" : "",

      "State"    : "Ineligible for use by VSAN",

      "Reason"   : "Has partitions",

      "IsSSD"    : "0",

"IsCapacityFlash": "0",

      "IsPDL"    : "0",

      "Size(MB)" : "30432",

   "FormatType" : "512e",

   },

]

[root@esxi153:~]

Be sure no partition are present, ie:

[root@esxi153:/dev/disks] ll naa.55cd2e415146*

-rw-------    1 root     root     960197124096 May 21 09:40 naa.55cd2e4151461075

-rw-------    1 root     root     960197124096 May 21 09:40 naa.55cd2e415146402c

[root@esxi153:/dev/disks] partedUtil get /dev/disks/naa.55cd2e4151461075

116737 255 63 1875385008

[root@esxi153:/dev/disks] partedUtil get /dev/disks/naa.55cd2e415146402c

116737 255 63 1875385008

[root@esxi153:/dev/disks]

Additionally be sure that Scratch location is not holding any disk/datastore you plan to use for vsan. Ie I put mine into /tmp

[root@esxi153:~] vim-cmd hostsvc/advopt/view ScratchConfig.ConfiguredScratchLocation

(vim.option.OptionValue) [

   (vim.option.OptionValue) {

      key = "ScratchConfig.ConfiguredScratchLocation",

      value = "/tmp"

   }

]

[root@esxi153:~]

Also disable coredump:

esxcli system coredump partition set -u

And reboot the ESXi... and retry the "bringup" Smiley Happy

Thank you for all the precious suggestions I got in such post thread.

Thx,

A.

View solution in original post

11 Replies
tenthirtyam
VMware Employee
VMware Employee
Jump to solution

Since the SSDs are the same size, you'll need to tag the capacityFlash of each host:

Get the Disks:

esxcli storage core devices list

Check the status of a specific SSD disk.

vdq -qH -d <disk>

Example: <disk> = t10.ATA_____INTEL_SSDSxxxx......

Results:

t10.ATA_____INTEL_SSDSxxxx......

..............

   IsCapacityFlash?:  0

Tag the SSD as capacityFlash

esxcli vsan storage tag add -d <disk> -t capacityFlash

Tag the SSD as capacityFlash

esxcli storage core devices list

t10.ATA_____INTEL_SSDSxxxx......

..............

   IsCapacityFlash?:  1

Reply
0 Kudos
abuzzi
Enthusiast
Enthusiast
Jump to solution

Hello Ryan,

it seems both of them are set for CapacityFlash usage:

[root@esxi153:~] esxcli storage core device list | grep naa.55

naa.55cd2e4151461075

   Display Name: Local ATA Disk (naa.55cd2e4151461075)

   Devfs Path: /vmfs/devices/disks/naa.55cd2e4151461075

naa.55cd2e415146402c

   Display Name: Local ATA Disk (naa.55cd2e415146402c)

   Devfs Path: /vmfs/devices/disks/naa.55cd2e415146402c

[root@esxi153:~]

[root@esxi153:~] vdq -qH -d naa.55cd2e4151461075

DiskResults:

      DiskResult[0]:

            Name:  naa.55cd2e4151461075

        VSANUUID: 

           State:  Ineligible for use by VSAN

          Reason:  Has partitions

          IsSSD?:  1

IsCapacityFlash?:  1

          IsPDL?:  0

        Size(MB):  915715

     FormatType:  512e

[root@esxi153:~]

[root@esxi153:~] vdq -qH -d naa.55cd2e415146402c

DiskResults:

      DiskResult[0]:

            Name:  naa.55cd2e415146402c

        VSANUUID: 

           State:  Ineligible for use by VSAN

          Reason:  Has partitions

          IsSSD?:  1

IsCapacityFlash?:  1

          IsPDL?:  0

        Size(MB):  915715

     FormatType:  512e

[root@esxi153:~]

So question now for you is how I revert that...

[root@esxi153:~] esxcli vsan storage tag add -d naa.55cd2e415146402c -t

Error: -t must have value

Usage: esxcli vsan storage tag add [cmd options]

Description:

  add                   Add a vSAN storage tag.

Cmd options:

  -d|--disk=<str>       Name of the disk to which the tag should be added. (required)

  -t|--tag=<str>        Tag to be added to disk. Supported tags are  [capacityFlash]. (required)

[root@esxi153:~]

Thank you,

A.

Reply
0 Kudos
tenthirtyam
VMware Employee
VMware Employee
Jump to solution

Use the following:

esxcli vsan storage tag remove -d <device name> -t capacityFlash

Example:

[root@esxi153:~] esxcli vsan storage tag remove -d naa.55cd2e415146402c -t capacityFlash

[root@esxi153:~] vdq -qH -d naa.55cd2e415146402c

DiskResults:

      DiskResult[0]:

            Name:  naa.55cd2e415146402c

        VSANUUID: 

           State:  Ineligible for use by VSAN

          Reason:  Has partitions

          IsSSD?:  1

IsCapacityFlash?:  0

          IsPDL?:  0

        Size(MB):  915715

     FormatType:  512e

Reply
0 Kudos
GreatWhiteTec
VMware Employee
VMware Employee
Jump to solution

Reason is pointing to disks having partitions. vSAN won't be able to use those devices until you delete the partitions.

You can delete the partitions from the ESXi/vCenter UI.

pastedImage_1.png

pastedImage_5.png

If this was a vSAN cluster previously you can delete the disk groups and partitions with these commands https://greatwhitetec.com/2020/02/19/devices-unavailable-for-vsan/

Reply
0 Kudos
abuzzi
Enthusiast
Enthusiast
Jump to solution

Hello Ryan,

k, based on your instructions I verified one disk is set for Capacity:

[root@esxi153:~] vdq -qH -d naa.55cd2e4151461075 | grep IsCapacityFlash

IsCapacityFlash?:  1

[root@esxi153:~] vdq -qH -d naa.55cd2e415146402c | grep IsCapacityFlash

IsCapacityFlash?:  0

[root@esxi153:~]

[root@esxi154:~] vdq -qH -d naa.55cd2e4151463bd6 | grep IsCapacityFlash

IsCapacityFlash?:  1

[root@esxi154:~] vdq -qH -d naa.55cd2e4151464a25 | grep IsCapacityFlash

IsCapacityFlash?:  0

[root@esxi154:~]

[root@esxi183:~] vdq -qH -d naa.55cd2e4150b84871 | grep IsCapacityFlash

IsCapacityFlash?:  0

[root@esxi183:~] vdq -qH -d naa.55cd2e4151460eba | grep IsCapacityFlash

IsCapacityFlash?:  1

[root@esxi183:~]

[root@esxi184:~] vdq -qH -d naa.55cd2e415141631e | grep IsCapacityFlash

IsCapacityFlash?:  1

[root@esxi184:~] vdq -qH -d naa.55cd2e4150b84933 | grep IsCapacityFlash

IsCapacityFlash?:  0

[root@esxi184:~]

unfortunately when I restarted the "bringup" it throw up new complain:

Host preparation failed with the following errors: com.vmware.evo.sddc.common.hostservices.error.HostPreparationException: No eligible capacity disks found on ESXi host 10.58.6.153. com.vmware.evo.sddc.common.hostservices.error.HostPreparationException: Failed to delete partitions on ESXi host 10.58.6.154.

Checking again the ESXi153 status I see:

[root@esxi153:~] vdq -qH -d naa.55cd2e4151461075 | grep IsCapacityFlash

IsCapacityFlash?:  1

[root@esxi153:~] vdq -qH -d naa.55cd2e415146402c | grep IsCapacityFlash

IsCapacityFlash?:  0

[root@esxi153:~]

So not sure how to progress now... do you have any idea ?

Thx,

A.

Reply
0 Kudos
abuzzi
Enthusiast
Enthusiast
Jump to solution

Hello,

I finally passed the vsan showstopper.

Here my notes in case might be of any help to anyone facing same issue.

First use "vdq -q" and beeing sure one SSD has "IsCapacityFlash: 0" (this will be used for cache). Be also sure one disk (SSD or not SSD) has "IsCapacityFlash: 1".

Both disks has to have "State: Eligible for use by VSAN":

[root@esxi153:~] vdq -q

[

   {

      "Name"     : "naa.55cd2e4151461075",

      "VSANUUID" : "",

      "State"    : "Eligible for use by VSAN",

      "Reason"   : "None",

      "IsSSD"    : "1",

"IsCapacityFlash": "1",

      "IsPDL"    : "0",

      "Size(MB)" : "915715",

   "FormatType" : "512e",

   },

   {

      "Name"     : "naa.55cd2e415146402c",

      "VSANUUID" : "",

      "State"    : "Eligible for use by VSAN",

      "Reason"   : "None",

      "IsSSD"    : "1",

"IsCapacityFlash": "0",

      "IsPDL"    : "0",

      "Size(MB)" : "915715",

   "FormatType" : "512e",

   },

   {

      "Name"     : "mpx.vmhba32:C0:T0:L0",

      "VSANUUID" : "",

      "State"    : "Ineligible for use by VSAN",

      "Reason"   : "Has partitions",

      "IsSSD"    : "0",

"IsCapacityFlash": "0",

      "IsPDL"    : "0",

      "Size(MB)" : "30432",

   "FormatType" : "512e",

   },

]

[root@esxi153:~]

Be sure no partition are present, ie:

[root@esxi153:/dev/disks] ll naa.55cd2e415146*

-rw-------    1 root     root     960197124096 May 21 09:40 naa.55cd2e4151461075

-rw-------    1 root     root     960197124096 May 21 09:40 naa.55cd2e415146402c

[root@esxi153:/dev/disks] partedUtil get /dev/disks/naa.55cd2e4151461075

116737 255 63 1875385008

[root@esxi153:/dev/disks] partedUtil get /dev/disks/naa.55cd2e415146402c

116737 255 63 1875385008

[root@esxi153:/dev/disks]

Additionally be sure that Scratch location is not holding any disk/datastore you plan to use for vsan. Ie I put mine into /tmp

[root@esxi153:~] vim-cmd hostsvc/advopt/view ScratchConfig.ConfiguredScratchLocation

(vim.option.OptionValue) [

   (vim.option.OptionValue) {

      key = "ScratchConfig.ConfiguredScratchLocation",

      value = "/tmp"

   }

]

[root@esxi153:~]

Also disable coredump:

esxcli system coredump partition set -u

And reboot the ESXi... and retry the "bringup" Smiley Happy

Thank you for all the precious suggestions I got in such post thread.

Thx,

A.

jemisdafs
Contributor
Contributor
Jump to solution

This code is working on my dashboard of the baby website. You can check and give reviews.

Reply
0 Kudos
Safos
Contributor
Contributor
Jump to solution

Hi folks

Is is not working with me !! i verified  the configuration and it seem every thing is correct in the type of  disks  I am getting the flowing error  ? any idea about  this erro ?

Host preparation failed with the following errors: com.vmware.evo.sddc.common.hostservices.error.HostPreparationException: Failed to delete partitions on ESXi host vcfesx01.cloudz.local. com.vmware.evo.sddc.common.hostservices.error.HostPreparationException: Failed to delete partitions on ESXi host vcfesx02.cloudz.local. com.vmware.evo.sddc.common.hostservices.error.HostPreparationException: Failed to delete partitions on ESXi host vcfesx03.cloudz.local. com.vmware.evo.sddc.common.hostservices.error.HostPreparationException: Failed to delete partitions on ESXi host vcfesx04.cloudz.local. 

 

[root@vcfesx01:~] vdq -q
[
{
"Name" : "naa.6000c29817c3914a12de8505b470f9b6",
"VSANUUID" : "",
"State" : "Eligible for use by VSAN",
"Reason" : "None",
"IsSSD" : "1",
"IsCapacityFlash": "0",
"IsPDL" : "0",
"Size(MB)" : "4096",
"FormatType" : "512n",
"IsVsanDirectDisk" : "0",
},

{
"Name" : "naa.6000c299489d8ea07ff4da3c7c512b82",
"VSANUUID" : "",
"State" : "Eligible for use by VSAN",
"Reason" : "None",
"IsSSD" : "1",
"IsCapacityFlash": "1",
"IsPDL" : "0",
"Size(MB)" : "8192",
"FormatType" : "512n",
"IsVsanDirectDisk" : "0",
},

{
"Name" : "naa.6000c29e90601647925e603b5ddb1777",
"VSANUUID" : "",
"State" : "Ineligible for use by VSAN",
"Reason" : "Has partitions",
"IsSSD" : "0",
"IsCapacityFlash": "0",
"IsPDL" : "0",
"Size(MB)" : "12288",
"FormatType" : "512n",
"IsVsanDirectDisk" : "0",
},

Reply
0 Kudos
shank89
Expert
Expert
Jump to solution

The last disk has partitions, before it can be prepared the disk partitions need to be wiped.

 

This been either be done using the cli or UI. Are you building an all flash or hybrid vsan cluster?

Shashank Mohan

VCIX-NV 2022 | VCP-DCV2019 | CCNP Specialist

https://lab2prod.com.au
LinkedIn https://www.linkedin.com/in/shankmohan/
Twitter @ShankMohan
Author of NSX-T Logical Routing: https://link.springer.com/book/10.1007/978-1-4842-7458-3
Reply
0 Kudos
Safos
Contributor
Contributor
Jump to solution

Hi 

it is a VSAN ALL FLAHS cluster  with 02 SSD disks, the  disk with parition is the local HDD disk of the ESXI hosts 

Reply
0 Kudos
Safos
Contributor
Contributor
Jump to solution

Hi

Anyone have an idea about this root cause of this error 

 I have a LAB with nested ESXI    each 02 SSD disk ,  one cache and one capacity 

Regards

Sofiane 

Reply
0 Kudos