ZFS — это как швейцарский нож для админа: надежный, удобный, умеет делать снимки виртуальных машин и даже контролировать целостность данных. Но, как и с ножом, им можно пораниться… особенно когда место на пуле внезапно заканчивается.
В этом посте я расскажу на собственном опыте, как справляться с ситуацией, когда ZFS говорит: «Место кончилось!», и при этом не впасть в панику.
Первое правило борьбы с «неожиданной полной корзиной»: проверить, где именно место кончилось. Иногда кажется, что диск забит под завязку, а на самом деле виноваты старые снапшоты или метаданные.
zpool list
zfs list
zfs list -t snapshot
Снапшоты — это как коллекция старых дисков: удобно, но если их слишком много, они начинают давить на пространство.
zfs destroy pool_name/dataset_name@snapshot_name
Для массовой чистки:
zfs list -t snapshot -o name | grep 'old_snapshot_pattern' | xargs -n 1 zfs destroy
Внимание: если клонированная VM использует снапшот, удалять его нельзя.
Да, ZFS использует умный кеш ARC, но иногда «чужие временные файлы» виртуальных машин превращаются в настоящих монстров.
pve-zsync list
rm -rf /var/lib/vz/template/cache/*
ZFS умеет сжимать данные, и это иногда настоящий волшебный трюк:
zfs set compression=lz4 pool_name/dataset_name
Когда все остальное исчерпано, приходится прибегать к тяжелой артиллерии — добавлять новые диски.
zpool add pool_name new_disk
Мой случай: на RAIDZ1 закончились SSD. Купил два новых, добавил в пул — и бац, с 5 ТБ стало 10 ТБ. Чувство победы не описать словами: «Земля вернулась на свои места».
Лучший способ не попасть в ад «пул заполнен» — мониторинг.
zpool status -v
zfs list -o space
Proxmox может присылать уведомления, когда место заканчивается. Советую настроить заранее — ваш сон будет крепче, чем у виртуалок на сервере.
ZFS — это супернадежный инструмент, но место здесь — вещь относительная. Главные враги администратора: старые снапшоты, временные файлы и забытые шаблоны.
Своевременная очистка, включение сжатия и планирование расширения пула делают жизнь проще. И тогда «место кончилось» перестанет быть катастрофой, а станет просто поводом для легкой уборки.