Пропадает место на zfs
Проблема: в хранилище на zfs ProxMox осталось мало места, хотя суммарно все диски виртуальных машин меньше того, что отображается в интерфейсе.
Это свойство zfs, она заранее резервирует дополнительное место.
Посмотреть можно командой:
[root@hv1 ~]# zfs list -o space
NAME AVAIL USED USEDSNAP USEDDS USEDREFRESERV USEDCHILD
zdata/vm-130-disk-1 9.55T 3.99T 607M 1.80T 2.18T 0B
Расшифровка колонок:
NAME — имя пула (dataset или zvol).
AVAIL — доступный объём свободного пространства в пуле, которое можно использовать (примерно, без учёта резерва).
USED — общее пространство, занимаемое dataset’ом или томом (включая данные, снэпшоты, метаданные и т.п.).
USEDSNAP — объём, занимаемый снэпшотами, относящимися к этому dataset’у или тому.
USEDDS — пространство, которое занимает сам dataset (данные без учёта снэпшотов).
USEDREFRESERV — пространство, занятое «зарезервированным» объёмом, выделенным специально для этого dataset’а (например, через параметр refreservation).
USEDCHILD — объём, занимаемый dataset’ами-потомками (например, вложенными файловыми системами или zvol’ами) внутри данного dataset’а.
Видно, что при реальном размере диска в 1.8 ТБ, общий занимаемый объем - 4 ТБ.
Из него 670 МБ - снапшоты и 2.18 ТБ - резерв
Уменьшить резерв в данном случае до 100 ГБ можно командой:
zfs set refreservation=100G zdata/vm-130-disk-1
Проверить:
zfs get refreservation zdata/vm-130-disk-1
Оптимальное значение USEDREFRESERV — это либо 0, чтобы экономить место, либо размер логического тома, если нужна жёсткая гарантия места.