Выпущена версия Vitastor 1.10.1
03.01.2025
Новогодний релиз с консистентными листингами и исправлениями.
Новые функции
- Добавлен флаг образов “удалён”, который ставится
vitastor-cli rm
, когда он начинает удалять образ, но не может полностью завершить удаление из-за неактивных PG или остановленных OSD. - Добавлена поддержка JSON вывода в
vitastor-disk prepare
иpurge
. - Добавлено отображение
backfillfull
пулов в статусе кластера. - Радикально переделаны и сделаны консистентными листинги и удаления.
На последнем нужно остановиться поподробнее. Что означают “консистентные листинги и удаления”? Это означает, что раньше vitastor-cli rm абсолютно корректно работал по сути только в идеальной ситуации - когда все OSD запущены и когда в кластере ничего не происходит, никакого ребаланса. В иных случаях он работал КАК-ТО. 😊 мог повиснуть и бесконечно ждать, пока что-то поднимется, мог пропустить часть PG, которые сейчас лежат, мог при листинге пропустить часть объектов и оставить их за собой в виде мусора, мог наоборот завершиться с ошибкой при переключении PG, хотя на самом деле запрос вполне можно было повторить…
В общем, теперь всё это должно уйти в прошлое, и удаление должно либо удалить весь образ и завершиться успешно, либо что-то недоудалить и завершиться с ошибкой. Во втором случае теперь также не удаляется запись об образе из vitastor-cli ls, но образ маркируется “deleted” - мол, удаление было начато, но не завершено.
Автоматической “дочистки” мусора с лежащих OSD после их переподнятия пока ещё нет, но это тема для переделки метаданных и будущих релизов. То есть, если вы удалите образ, пока часть OSD “down” и потом поднимете их обратно, объекты с них “вернутся” и запрос удаления нужно будет повторить ручками. Но - теперь вы будете точно знать, когда это нужно сделать, на основе кода завершения vitastor-cli rm. 😊
Исправления
- Исправлены неработающие режимы команды
vitastor-cli rm --exact
/--matching
. - Наконец-то РЕАЛЬНО исправлены ошибки “Unexpected status” в Proxmox! Как они достали… 😊
- Исправлен неправильный выбор родительского пула
vitastor-cli create-snap
. - Исправлена неполная проверка на циклы в parent_id образов на стороне OSD.
- Исправлен баг с неработающими чтениями из образов, у которых как минимум два снапшота в разных пулах.
- Исправлено добавление VITASTOR_CONF в командную строку в скрипте opennebula prebackup
- Исправлена обработка ENOSPC (полных OSD) с EC, по задумке добавленная в 1.6.0. Теперь при заполнении кластера OSD точно не падают. 😊
- Улучшено логгирование ошибок вторичных операций.
Ссылки
- Git: https://git.yourcmc.ru/vitalif/vitastor/releases/tag/v1.10.1
- Инструкции по установке: https://vitastor.io/docs/installation/packages.html