Я хочу запустить Linux fstrim
или Windows degrag retrim в файловой системе в виртуальной машине для сжатия тонких дисков VMware vSphere. Однако это должно быть выполнено только если моментальный снимок отсутствует, то при fstrim файловой системы, созданной моментальным снимком, она вырастет до полного размера на тонких дисках VMware vSphere.
Ограничение: гостевая ОС ВМ не имеет доступа к интерфейсам управления vSphere / vCenter.
Есть ли способ обнаружить наличие моментального снимка из гостевой ОС виртуальной машины - например, с помощью инструментов VMware?
Q: Есть ли способ определить наличие моментального снимка из гостевой ОС виртуальной машины *
А: не то чтобы знаю. Однако вы можете использовать sg_vpd
чтобы проверить, поддерживается ли UNMAP. Например:
# sg_vpd /dev/sdb -p lbpv
Logical block provisioning VPD page (SBC):
Unmap command supported (LBPU): 1
Write same (16) with unmap bit supported (LBWS): 0
Write same (10) with unmap bit supported (LBWS10): 0
Logical block provisioning read zeros (LBPRZ): 1
Anchored LBAs supported (ANC_SUP): 0
Threshold exponent: 1
Descriptor present (DP): 0
Provisioning type: 2
Некоторые пояснения:
provision type
равно 2, значит, вы работаете с «тонкого» диска;unmap command supported (LBPU)
равно 1, поэтому ваш диск утверждает, что поддерживает UNMAP / TRIMТем не менее, выдача fstrim
на снэпшот-диске должен не иметь какой-либо неблагоприятный эффект. На VMWare <= 6.5 это не должно иметь никакого эффекта, пока VMWare> = 6.7, похоже, поддерживает TRIM даже при использовании снимков.
РЕДАКТИРОВАТЬ: как подробно описано в комментариях ниже, проблема связана с исходной инфляцией диска во время / после "обрезанного" снимка. укрепление. Как показано Вот, этого побочного эффекта невозможно избежать даже в последней версии VMWare 6.7.