Быстрая и простая распределённая
программная СХД

Vitastor

  • Распределённая программная СХД (SDS)
  • ...но Быстрая 🚀 — отклик 0.1 мс
  • ...и Простая ✌️ — 60 тыс. строк, а не 1 млн
  • Разработана с нуля в России

Программная СХД (SDS)

ПО, объединяющее обычные серверы с обычными дисками в единое масштабируемое отказоустойчивое хранилище, имеющее расширенные функции

Зачем SDS IaaS/PaaS провайдерам?

  • Лёгкость масштабирования
  • Сохранность данных клиента
  • Снижение затрат за счёт гиперконвергентности
  • Отсутствие "микроменеджмента" серверов
  • Различные классы хранения (SSD, HDD)

Но многие SDS — это накладные расходы

Накладные расходы

  • Q=1 — лучший возможный отклик
  • 4 кб запись на SSD — 0.04 мс
  • 4 кб запись в Ceph — от ~ 1 мс
  • Внутренние SDS облаков – ± аналогично
  • 2400 % накладные расходы !

Vitastor

  • ~ 0.1 мс отклик при репликации
  • ~ 0.2 мс отклик при EC
  • 3-8 гбайт/с на клиента (ВМ)
  • ~ 400000 оп/с на клиента
  • Всего ~1 ядро CPU на NVMe диск
  • Низкое (50%) влияние ребаланса

Vitastor — протоколы

  • Блочный доступ (диски ВМ, контейнеры):
    Kubernetes, Proxmox, OpenNebula, OpenStack и др.
  • VitastorFS (NFS) — кластерная POSIX ФС
  • Объектное хранение (S3) — на базе Zenko CloudServer

Функции

  • Репликация, коды коррекции ошибок (N+K)
  • Любые диски: SSD/NVMe, HDD, SSD+HDD
  • Гибкое распределение данных
  • Поддержка RDMA / RoCEv2
  • Быстрые снимки и клоны
  • Быстрые контрольные суммы, скрабы
  • Мониторинг
  • Kubernetes оператор
  • И другие...

Симметричная архитектура

  • Симметричная распределённая, Ø SPOF
  • Блочный базовый слой
  • Равномерное распределение нагрузки
  • Транзакционная запись → защита от потери данных
  • Оптимизация под современные SSD/HDD

Простота сопровождения

  • Малое число компонентов
  • Прозрачность метаданных в etcd
  • Минимум внешних зависимостей
  • Компактная реализация:
    ~60k строк кода (Ceph ~1M)
  • Поддержка нестандартных архитектур (E2K)

Лицензирование

  • Собственная Copyleft-лицензия VNPL
  • Свободное использование в OpenSource среде
  • Закрытые сервисы требуют коммерческой лицензии
  • Техническая и архитектурная поддержка от автора

Контакты

Блочный доступ

С поддержкой всех основных основанных на KVM систем виртуализации, а также контейнеров: OpenNebula, OpenStack, Proxmox VE, Kubernetes

Кластерная ФС

Собственная реализация масштабируемой кластерной POSIX-совместимой файловой системы, монтируемой по NFS 3.0

Объектное хранилище (S3)

На базе Zenko CloudServer

Интересное — последние записи

Выпущена версия Vitastor 3.0.15

На этот раз исправления мелкие:

  • Найдено и внесено корректное исправление для миграции виртуальных дисков QEMU при включённом iothread. Проверено, теперь миграция работает. Пакеты QEMU пока обновлены только для Proxmox 9, через некоторое время будут пересобраны остальные.
  • Внесены исправления для корректной работы ВМ в Proxmox с swTPM (например, Windows ВМ) без включения монтирования всех дисков через NBD (спасибо пользователям из чата).
  • В последних релизах во все Debian-пакеты (но не RPM) прокралась версия Antietcd со сломанным кластерным режимом - из-за того, что при сборке использовалась версия Antietcd из master, а не из стабильного тега. Теперь это исправлено, Debian-пакеты снова собираются со стабильной версией Antietcd, а в самом Antietcd исправлена кластеризация. Симптомом проблемы была невозможность выбрать лидера в кластере Antietcd.
  • Исправлен запуск монитора со встроенным Antietcd при использовании IPv6.
  • Исправлен подсчёт статистики места в ФС и S3-пулах в новом хранилище (PR #127).

28.06.2026 Читать далее →

Выпущена версия Vitastor 3.0.14

Сколько (багов!) я зарезал, сколько перерезал! (более 50)

Общее замечание: большинство исправлений ошибок теперь сопровождаются регрессионными тестами, проверяющими, что они не повторятся в будущем. Большинство ошибок, исправленных в этом релизе, было обнаружено с помощью анализа LLM (Claude Opus/Fable, GPT 5.5).

21.06.2026 Читать далее →

Выпущена версия Vitastor 3.0.13

  • Исправления нового хранилища:
    • Исправлена логика нескольких повторных откатов
    • Исправлено падение при компактизации полностью откаченного объекта
    • Исправлено возможное слияние цепочек разных объектов при загрузке с postpone_load
    • Исправлен импорт блочных контрольных сумм в vitastor-disk write-meta
    • Исправлен расчёт контрольной суммы заголовка в vitastor-disk write-meta
  • Исправлена старого хранилища:
    • Исправлен возможный пропуск ожидания пакетного fsync частью корутин
  • Улучшен тест ENOSPC, исправлено возможное падение при ENOSPC
  • На всякий случай добавлен fsync при записи суперблока в vitastor-disk prepare
  • Исправлено возможное падение OSD при включённых pg_locks и ошибке их проверки в sec_read_bmp
  • Исправлена инициализация VitastorFS при включённых local_reads

31.05.2026 Читать далее →

Выпущена версия Vitastor 3.0.12

Важные исправления (кроме нового хранилища)

  • Исправлено возможное использование освобождённой памяти в OSD при ошибках начального коммита/отката объектов в EC пулах.
  • Исправлено возможное освобождение некорректного указателя в OSD при ошибках чтения из цепочек снапшотов/клонов в EC пулах.
  • Исправлена возможно некорректная обработка команд commit/rollback в EC пулах во время изменения числа PG пула.
  • Инвертирован параметр включения fsync в ublk драйвере (fsync не включался на пулах без immediate_commit).
  • В отладочных целях добавлена команда raw-ls для поиска версий объектов в кластере с помощью операций листингов.

17.05.2026 Читать далее →

Выпущена версия Vitastor 3.0.11

Единственное исправление:

  • Исправлено отсутствие обработки ошибок чтения битмапов во время чтений из EC образов со снимками или клонированных образов, потенциально приводящее к некорректным чтениям (чтениям нулей) при перезапусках OSD / переподнятии PG

⚠️ Внимание - если баг вас затрагивает, лучше обновляться с приостановкой i/o клиентов

09.05.2026 Читать далее →

Все записи