Обзор инфраструктуры
У меня работает продакшн-кластер на базе Proxmox VE 8.x со следующей конфигурацией:
Кластер: 4 узла HPE DL380 Gen10
Общее хранилище: HPE MSA 2050, настроенный в режиме Virtual Storage
Один iSCSI LUN предоставляется всем узлам с использованием мультипути.
Хранилище Proxmox настроено как LVM (не тонкое) поверх этого iSCSI LUN, называется storage-msa
Все диски VM хранятся на этом общем томе.
Проблема
Когда я удаляю VM из GUI Proxmox, выделенное пространство не возвращается на HPE MSA 2050.
После расследования я понял:
LVM-том не использует тонкое выделение, поэтому discard/trim не работают.
iSCSI LUN не получает команды по освобождению пространства.
Со временем это приводит к постоянному заполнению LUN, даже несмотря на удаление VM.
Это начинает становиться проблемой с точки зрения планирования мощностей и масштабируемости.
Что я пробовал / рассматривал
Включение discard=on в VM: не влияет (не имеет значения для LVM thick).
lvchange --discard passdown: не поддерживается на нетонких LV.
fstrim: неэффективен.
Скрипт для очистки сиротских томов: работает частично, но не освобождает пространство на самом LUN.
Мой вопрос
Есть ли способ вернуть пространство на общем iSCSI LUN, используемом с LVM (не тонким), без необходимости уничтожать и пересоздавать группу томов?
Если нет, то какой лучший подход в будущем, чтобы избежать этой ловушки?
Стоит ли перейти на LVM-thin (несовместимый с совместным использованием)?
Перейти на Ceph или ZFS поверх iSCSI?
Другие рекомендации?
Спасибо большое за ваши советы — действительно хочу согласовать это с лучшими практиками.
У меня работает продакшн-кластер на базе Proxmox VE 8.x со следующей конфигурацией:
Кластер: 4 узла HPE DL380 Gen10
Общее хранилище: HPE MSA 2050, настроенный в режиме Virtual Storage
Один iSCSI LUN предоставляется всем узлам с использованием мультипути.
Хранилище Proxmox настроено как LVM (не тонкое) поверх этого iSCSI LUN, называется storage-msa
Все диски VM хранятся на этом общем томе.
Проблема
Когда я удаляю VM из GUI Proxmox, выделенное пространство не возвращается на HPE MSA 2050.
После расследования я понял:
LVM-том не использует тонкое выделение, поэтому discard/trim не работают.
iSCSI LUN не получает команды по освобождению пространства.
Со временем это приводит к постоянному заполнению LUN, даже несмотря на удаление VM.
Это начинает становиться проблемой с точки зрения планирования мощностей и масштабируемости.
Что я пробовал / рассматривал
Включение discard=on в VM: не влияет (не имеет значения для LVM thick).
lvchange --discard passdown: не поддерживается на нетонких LV.
fstrim: неэффективен.
Скрипт для очистки сиротских томов: работает частично, но не освобождает пространство на самом LUN.
Мой вопрос
Есть ли способ вернуть пространство на общем iSCSI LUN, используемом с LVM (не тонким), без необходимости уничтожать и пересоздавать группу томов?
Если нет, то какой лучший подход в будущем, чтобы избежать этой ловушки?
Стоит ли перейти на LVM-thin (несовместимый с совместным использованием)?
Перейти на Ceph или ZFS поверх iSCSI?
Другие рекомендации?
Спасибо большое за ваши советы — действительно хочу согласовать это с лучшими практиками.
