Тонкий файл подкачки ВМ в vSAN (thin swap).
В своей статье Swap Object Thin Provisioning in vSAN 6.7 Pete Flecha пишет о том, что начиная с vSAN 6.7 поведение по умолчанию для объекта подкачки vSAN устанавливается на тонкое выделение Thin Provisioning.
Что это значит?
Предположим что наша версия vSAN отличная от версии 6.7 и имеется ВМ с 8 Гб памяти*. Если у нас (FTT) = 1, то тогда мы имеем на нашем vSAN 16 Гб (8*2) занятого места под swap-файл.
*Если у нас нет резервирования памяти, то своп файл создается равным размеру сконфигурированной памяти. Если же память резервируется, то размера свопа = сконфигурированная память — зарезервированная.
Если на хосте у нас памяти достаточно и своп никогда не используется, то при большом количестве ВМ с большим объемом памяти мы получаем очень нерациональное использование дискового пространства. А если у нас All-Flash диски, то все это получается еще и очень затратным.
У меня vSAN версии 6.6. И я решил выяснить сколько же у меня занимает своп файл.
И вот свопа я не обнаружил.
Тогда я запустил команду
SwapThickProvisionedDisabled — это расширенный параметр хоста. При его включении (значение = 1) файлы подкачки станут тонкими и будут использоваться только при использовании файла подкачки.
Как мы видим, параметр включен, поэтому и размер своп файлов на прошлом скриншоте такой незначительный.
Примечание: командлет Get-VSANVersion -Cluster My-Cluster на самом деле не является встроенным. Т.е. его работу обеспечивает скрипт https://github.com/vmware/PowerCLI-Example-Scripts/blob/master/Scripts/VSANVersion.ps1.
Всю инфраструктуру настраивал я сам, и, следовательно, параметр установлен по умолчанию.
Я написал комментарий к статье по этому поводу. Но как-то безуспешно. Комментарий даже не опубликован.
Тем не менее я предполагаю что в версии vSAN 6.6.1 U2 Thin Provisioning для swap-файлов включен по умолчанию.
Как пояснил пользователь с VMTN (vmware communities), являющийся сотрудником VMware: «vSAN 6.6.1 U2 был выпущен после 6.7 GA. Сборка выпусков после 6.7 GA будет больше всего похожа на новые функции с обратной связью. Вот почему это отключено по умолчанию, даже если это технически предыдущая версия для 6.7».
Если у вас этот параметр не включен, то управлять им вы можете с помощью данных команд, запускаемых на хосте:
Сделать swap файл толстым (thick)
Сделать swap файл (thin)
Также имеется скрипт для автоматизации этих задач Virtual SAN 6.2 & PowerCLI – Sparse Virtual Swap files. Но я сам его не тестировал.
После настройки данного параметра необходимо выключить и заново включить ВМ для применения новой политики.
А с помощью скрипта python можно узнать какие ВМ все еще используют толстые swap диски — https://github.com/lamw/vghetto-scripts/blob/master/python/vsan-find-thick-vmswap.py