Files
tromcho.net/docs/installation/docker.ru.md
T
Vitaliy Filippov 538620b400 Release 3.0.6
- Fix one more bug in old store checksums O_o - checksum verification wasn't
  working correctly on reads quickly after small initial offsetted writes
  (when a BIG_WRITE was read from the journal).
- Fix clients possibly not destroyed after being switched to RDMA. Not 100%
  verified, but in theory it could rarely lead to PGs hanging in peering/stopping
  states with RDMA enabled.
- Use vitastor-cli in the Cinder driver for modifications instead of direct etcd
  interaction.
- Fix mon_https_ca parsing.
- Fix Docker install.sh, add instructions for Podman.
2026-03-22 22:49:51 +03:00

4.4 KiB

Документация → Установка → Установка в Docker


Read in English

Установка в Docker

Vitastor можно установить в Docker/Podman. При этом etcd, мониторы и OSD запускаются в контейнерах, но всё остальное выглядит максимально приближенно к установке из пакетов:

  • используется сеть хост-системы
  • для автозапуска используются udev и systemd
  • журналы записываются в journald (не в json-файлы журналов docker)
  • в хост-систему устанавливаются обёртки для вызова консольных инструментов vitastor-disk, vitastor-cli и других через контейнер

Такая установка полезна тогда, когда установка из пакетов невозможна или неудобна, например, в нестандартных Linux-дистрибутивах.

Если вам нужна не просто контейнеризованная инсталляция, вы также можете обратить внимание на Vitastor Kubernetes-оператор: https://github.com/Antilles7227/vitastor-operator

Установка контейнеров

Инструкция по установке максимально простая.

  1. Скачайте Docker-образ желаемой версии:
    docker pull vitalif/vitastor:v3.0.6
  2. Установите скрипты в хост-систему командой:
    docker run --rm -it -v /etc:/host-etc -v /usr/bin:/host-bin vitalif/vitastor:v3.0.6 install.sh
  3. Перезагрузите правила udev:
    udevadm control --reload-rules
  4. Включите сервис vitastor-host:
    systemctl enable --now vitastor-host

После этого вы можете возвращаться к разделу Быстрый старт.

Podman

Если вы используете Podman, перед установкой контейнеров Vitastor выполните следующие команды от имени суперпользователя:

ln -s podman /usr/bin/docker

mkdir -p /etc/systemd/system/systemd-udevd.service.d

cat >/etc/systemd/system/systemd-udevd.service.d/override.conf <<EOF
[Service]
CapabilityBoundingSet=~
SystemCallFilter=@mount capset
EOF

systemctl daemon-reload

systemctl restart systemd-udevd

Без этих настроек udev не может делать вызовы внутрь Podman-контейнеров и определение дисков Vitastor не работает.

Обновление контейнеров

Сначала обязательно проверьте раздел Обновление Vitastor, чтобы понять, не требуются ли вам какие-то дополнительные действия.

После этого для обновления Docker-инсталляции вам нужно просто поменять опцию VITASTOR_VERSION в файле /etc/vitastor/docker.conf и перезапустить все сервисы Vitastor командой:

systemctl restart vitastor.target

QEMU

В Docker-образ также входят QEMU, qemu-img и qemu-storage-daemon, собранные с поддержкой Vitastor.

Однако настроить запуск QEMU в Docker сложнее и способ запуска зависит от используемого интерфейса виртуализации (OpenNebula, Proxmox и т.п.). Также для OpenNebula, например, требуется патченый Libvirt.

Поэтому по умолчанию Docker-сборка пока что не включает в себя готового способа запуска QEMU и QEMU рекомендуется устанавливать из пакетов или собирать самостоятельно.

fio

fio также входит в Docker-контейнер vitastor, и в хост-систему устанавливается обёртка vitastor-fio для запуска fio в контейнер.