Mysterious vSAN datastore alert – and the relationship between First-Class disks and Cloud-Native storage
Aug 27th, Robert Kloosterhuis
I ran across an interesting 6.7 vSAN alarm today, that baffled me. This is vSphere 6.7 Update 3L (18.104.22.168000)
Improved virtual disk infrastructure namespaces storage policy (alarm)
So this is referring to the config setting we can find under Storage --> vSAN Datastore object --> Configure -- General
This is a config setting that was introduced.. uhh.. somewhere.. but I could not find any reference or documentation about it.
There is no mention of the policy setting at all in the official docs for 6.7 or 7.0 ( https://docs.vmware.com/en/VMware-vSphere/6.7/com.vmware.vsphere.virtualsan.doc/GUID-F52F0AE9-FB31-4236-B566-D9610B14C670.html ) .
I suspect the alarm is being triggered in our case, because, as you can see from the screenshot, the setting was 'blank'. I assume that in this case, it would revert to its default previous behaviour; to inherit the set VM Default Storage policy. I am not sure about this though.. what would be the point of the alarm then?
But the wording between this config setting, and the warning, is all slightly different, so I am not sure.
'Home Storage Policy' vs 'Improved Virtual Disk Home Storage Policy' vs 'Improved virtual disk Infrastructure Namespaces Storage policy (alarm)'
So what is this referring to anyway??
Cormac Hogan has a nice set of blog articles on this:
So Cormac's blog post is from 18 months ago. Has, in the meantime, VMware settled on a standard name for these things?
First Class Disks (FCD)
Improved Virtual Disk (IVD)
Managed Virtual Disks
Enhanced Virtual Disks
It seems not, because while the vSphere 6.7 web client referred to these things as 'Improved Virtual Disks' , the vSAN/CNS part of VMware still calls them 'First-Class Disks, or FCD's for short.
But no mention of IVD's anywhere in the core vSAN docs (I did a search across the 4 PDFs). Its a shame cause this is pretty interesting technology.
Ironically, they are mentioned far more as part of the vRealize 8 documentation, here are some links:
Here is a mention of them, in regards to how they are used in Cloud Native Storage (or CNS). And in fact, this CNS use appears to be the primary use-case of FCD's being added to vSphere in the first place. But good luck finding that out :p
Persistent Volumes (PV) are created in vSphere as First-Class Disks (FCD). FCDs are independent disks with no VM attached. With the release of vSphere 7.0 U2, we are adding snapshot support of up to 32 snapshots for FCDs. This enables you to create snapshots of your K8s PVs which goes along with the SPBM multiple snapshot rules.
More information on the vSphere CSI is here:
This is actually pretty important.. if in the vSphere CSI (Container Storage Interface) for Kubernetes, Persistent Volumes are FCD objects... and you can be in a situation where there is no default policy applied to them in vSAN.. then.. uhh.. they are NOT protected. Right?
Well.. no .. because even if this config setting is left blank, CNS objects seem to inherit the default storage policy set for the vSAN datastore. I double checked:
So to my mind.. that makes the alert message... well.. pointless?
It should be noted that in vSphere with Tanzu (TKGs), the storage policy for these kinds of objects is handled quite differently. The associated vSAN storage policy is in that case, associated with the vSphere Namespace
Here are some slides I made that explain how that works:
Up to today, the vCenter alarm
Improved virtual disk infrastructure namespaces storage policy alarm) was completely ungooglable. That is the main reason for this blog post now existing.
But I hope this simultaneously explains a bit about what this 'Improved Virtual Disks' are all about. I was a little shocked how little there is in the form of official documentation around this, from VMware.