Files
tromcho.net/docs/intro/quickstart.ru.md
T
Vitaliy Filippov a0cae4c180 Rename "jerasure" to "ec" in pool configuration, function names, fix documentation and Debian build scripts
Old pool configurations with "jerasure" also remain supported as an alias for "ec"
2022-06-03 15:40:00 +03:00

5.9 KiB
Raw Blame History

Документация → Введение → Быстрый старт


Read in English

Быстрый старт

Подготовка

  • Возьмите серверы с SSD (SATA или NVMe), желательно с конденсаторами (серверные SSD). Можно использовать и десктопные SSD, включив режим отложенного fsync, но производительность будет хуже. О конденсаторах читайте здесь.
  • Возьмите быструю сеть, минимум 10 гбит/с. Идеал - что-то вроде Mellanox ConnectX-4 с RoCEv2.
  • Для лучшей производительности отключите энергосбережение CPU: cpupower idle-set -D 0 && cpupower frequency-set -g performance.
  • Установите пакеты Vitastor.

Настройте мониторы

На хостах, выделенных под мониторы:

  • Пропишите нужные вам значения в файле /usr/lib/vitastor/mon/make-units.sh
  • Создайте юниты systemd для etcd и мониторов: /usr/lib/vitastor/mon/make-units.sh
  • Запустите etcd и мониторы: systemctl start etcd vitastor-mon
  • Пропишите etcd_address и osd_network в /etc/vitastor/vitastor.conf. Например:
    {
      "etcd_address": ["10.200.1.10:2379","10.200.1.11:2379","10.200.1.12:2379"],
      "osd_network": "10.200.1.0/24"
    }
    

Настройте OSD

  • Пропишите etcd_address и osd_network в /etc/vitastor/vitastor.conf. Например:
    {
      "etcd_address": ["10.200.1.10:2379","10.200.1.11:2379","10.200.1.12:2379"],
      "osd_network": "10.200.1.0/24"
    }
    
  • Инициализуйте OSD:
    • SSD: /usr/lib/vitastor/make-osd.sh /dev/disk/by-partuuid/XXX [/dev/disk/by-partuuid/YYY ...].
      Внимание! Скрипт по умолчанию рассчитан на то, что у вас диски с конденсаторами и отключённым кэшем! Если это не так, из юнитов systemd нужно убрать строчки disable_data_fsync и immediate_commit!
    • Гибридные, HDD+SSD: /usr/lib/vitastor/mon/make-osd-hybrid.js /dev/sda /dev/sdb ... - передайте все ваши SSD и HDD скрипту в командной строке подряд, скрипт автоматически выделит разделы под журналы на SSD и данные на HDD. Скрипт пропускает HDD, на которых уже есть разделы или вообще какие-то данные, поэтому если диски непустые, сначала очистите их с помощью wipefs -a. SSD с таблицей разделов не пропускаются, но так как скрипт создаёт новые разделы для журналов, на SSD должно быть доступно свободное нераспределённое место.
  • Вы можете менять параметры OSD в юнитах systemd или в vitastor.conf. Описания параметров смотрите в справке по конфигурации.
  • Если все ваши диски - серверные с конденсаторами, пропишите это в глобальную конфигурацию в etcd:
    etcdctl --endpoints=... put /vitastor/config/global '{"immediate_commit":"all"}'
  • Запустите все OSD: systemctl start vitastor.target

Создайте пул

Создайте конфигурацию пула с помощью etcdctl:

etcdctl --endpoints=... put /vitastor/config/pools '{"1":{"name":"testpool",
  "scheme":"replicated","pg_size":2,"pg_minsize":1,"pg_count":256,"failure_domain":"host"}}'

Для пулов с кодами коррекции ошибок конфигурация должна выглядеть примерно так:

etcdctl --endpoints=... put /vitastor/config/pools '{"2":{"name":"ecpool",
  "scheme":"ec","pg_size":4,"parity_chunks":2,"pg_minsize":2,"pg_count":256,"failure_domain":"host"}`

После этого один из мониторов должен сконфигурировать PG, а OSD должны запустить их.

Проверьте состояние кластера

vitastor-cli status

Либо же вы можете проверять состояние PG прямо в etcd: etcdctl --endpoints=... get --prefix /vitastor/pg/state. Все PG должны быть 'active'.

Создайте образ

Используйте vitastor-cli (смотрите документацию CLI здесь):

vitastor-cli create -s 10G testimg

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

Установите плагины