#Space reclamation on namespaces ( NVME )

1 messages · Page 1 of 1 (latest)

rigid sphinx
#

I was playing arround with NVMEoTCP in vmware 7.0u3n and i found that space reclamation does not work or it is not implemented ( this is the equivalent of space allocation for LUN's or SCSI unmap )

I have as environment an hyperflex with 3 nodes running vmware 7u3n and the storage is A250 ontap 9.13p2.

Is there any workaround to this from ontap side ?

frank topaz
frosty dome
#

I think this was implemented in the NVMe standard 2.2 which is from 2021. but until now I do not know any vendor which implemented this

rigid sphinx
#

oki so we do not overprovision ... but still how do we handle the case when the namespace inside the volume gets full ?

#

my guess is to use a datastore cluster with multiple namespaces added and let vmware balance the space but even so vmware can not know how "full" is the namespace on ontap side .

main nebula
#

VMware sees how full the namespace is, because it contains a VMFS filesystem which vmware can control. VMware does not see how full the volume is where the namespace resides in, but if you do not overprovision, that shouldn't be a problem

rigid sphinx
#

vmware does not see how full is the namepsace that is the problem (* you can see in the attatched document the discrepance between the namespace utilization and the vmare file system )

main nebula
#

what you're seeing is just thin provisioning of vmdks inside the namespace

#

don't confuse the layers "vmdk in vmfs on namespace (orLUN)" and "LUN in volume in ONTAP". those are unrelated and each have their own thin-provisioning

rigid sphinx
#

yes when the namespace will get full this will be disconnected by the storage same as when you provision a lun and have no space allocation on ( that is off by default another strange stuff ) ; and since there is no space reclamation you can not do anything about it ; the host will see the datastore with free space and the namespace will be full ....

main nebula
#

the "strange reason" that space allocation is off by default is that not all operating systems support it so it's safer to have it off by default