Nutanix и Space Reclamation

Блоггер Kalle Pihelgas заметил и исследовал интересную особенность поведения хранилища Nutanix при использовании VMware и, соответственно, дисков VMDK у виртуальных машин.
Как вы уже знаете, для VMware vSphere Nutanix предоставляет свое хранилище как датастор по NFS. NFS вообще очень удобный и, возможно, самый лучший способ подключить дисковое хранилище к виртуальным машинам. В числе прочего, по NFS ваше хранилище получается «thin by design», VMDK на нем не занимают места больше, чем в них физически занято места. Это с разных сторон удобно, не буду на этом останавливаться отдельно.
Но вот сам VMDK внутри вполне может иметь неиспользуемое пространство, так сказать «на уровне OS». На файловой системе, например на NTFS у вас может быть удален большой файл, но так как все современные файловые системы физически никак не удаляют «удаленные» файлы, а просто помечают их блоки неиспользуемыми, на уровне стораджа нет возможности «увидеть» что данный файл действительно удален, а не просто давно никем не используется (и может понадобиться, поэтому трогать его нельзя). Однако можно попробовать принудительно затереть соержимое удаленного файла нулями. Этот процесс принято называть secure delete, и подобные утилиты часто встречаются.
Так вот в результате работы Secure Delete на дисках виртуальной машины, внутри VM, автор отметил интересный эффект.
Он наблюдал резкое снижение объемов занятого места, за счет того, что, по-видимому, очищеные и принудительно заполненные нулями пространства стертых ранее файлов успешно «схлопнулись», позволив «утоньшить» VMDK.


Размер VM до затирания нулями удаленных файлов на диске


Размер VM после затирания нулями удаленных файлов на диске

Однако, несмотря на то, что занятое VMDK место, в результате secure delete, уменьшилось, свободное место на Storage Container на уровне самого Nutanix не высвободилось немедленно, и появилось только на следующий день. По-видимому после того, как отработал некий ночной фоновый процесс в системе.

В авторской публикации приводится пример скрипта, выполняющий secure delete в Linux, да и вообще автор проделал обширное исследование вопроса Space Reclamation для разных OS.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *