Установка через Ansible Tarantool Enterprise | Tdb

Версия:

latest

Установка через Ansible Tarantool Enterprise

Ansible Tarantool Enterprise (ATE) – это набор плейбуков для развертывания и последующего обслуживания продуктов Tarantool Enterprise. Инсталлятор Ansible Tarantool Enterprise – это основной способ установки Tarantool DB.

Ansible Tarantool Enterprise используется для развертывания кластера на промышленном сервере. Инструкция по запуску кластера через ATE приведена в разделе Запуск кластера через Ansible Tarantool Enterprise.

Примечание

В руководстве используется Ansible Tarantool Enterprise версии 1.2.0.

Содержание:

Способы установки

Инсталлятор Ansible Tarantool Enterprise поставляется в виде пакета, доступного в личном кабинете на сайте Tarantool.

Для установки с помощью ATE Tarantool DB также поставляется в виде пакета, доступного в личном кабинете на сайте Tarantool. Узнать больше: Публикуемые версии.

Поддерживается два способа установки Tarantool DB с помощью ATE:

В обоих вариантах используется один и тот же установочный пакет Tarantool DB, но пакет инсталлятора ATE нужно выбирать под конкретный вариант установки:

  • tarantool-enterprise-<VERSION>.tar.gz – пакет для установки через Ansible;

  • ansible-tarantool-enterprise-<VERSION>.tar.gz – пакет для установки через Docker.

Здесь:

  • VERSION – версия инсталлятора Ansible Tarantool Enterprise.

Конечный результат установки Tarantool DB через ATE одинаков для обоих вариантов.

Требования к инфраструктуре

Минимальные системные требования:

  • 4 Core 2.6ГГц +;

  • 4Гб RAM.

Поддерживаемые ОС:

  • Astra Linux;

  • РЕД ОС.

Также возможна установка на ALTLinux, Ubuntu, AlmaLinux, CentOS, но полноценная работоспособность не гарантируется. За дополнительной информацией по поддерживаемым ОС можете обратиться в техническую поддержку.

Подробнее о требованиях к инфраструктуре для Tarantool DB можно прочитать в соответствующем разделе.

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

  1. Настройте межсетевой экран (firewall):

    a. Настройте порты для бинарного протокола Tarantool.

    Для взаимодействия внутри кластера Tarantool использует как TCP, так и UDP.

    Откройте пул портов 3301–3401 для TCP и UDP трафика, для внутреннего трафика на всех серверах, на которых устанавливается Tarantool.

    Если внешние приложения обращаются к кластеру по бинарному протоколу, также необходимо открыть пул портов 3301–3401, но достаточно TCP.

    Важно

    Каждый экземпляр Tarantool должен иметь связь со всеми остальными экземплярами (full-mesh).

    Примечание

    Порты могут быть открыты только между соответствующими серверами или в конкретных подсетях. Детали настройки межсетевого экрана в вашем окружении уточняйте у команд инфраструктуры и информационной безопасности.

    b. Настройте порты для HTTP(s).

    • HTTP используется для взаимодействия администраторов с веб-интерфейсом модуля Tarantool Cartridge.

      Откройте пул портов 8001–8101 для HTTPS-трафика на всех серверах, на которых устанавливается Tarantool.

      Встроенный в Tarantool сервер не может принимать SSL-трафик, поэтому необходимо настроить проксирование HTTPS-трафика на HTTP-порты из соответствующего локального пула портов 8081–8181. Для этого можно использовать, например, nginx.

    c. В случае, если у вас:

    • отдельно стоящий сервер;

    • один из серверов под Tarantool;

    • агент CI/CD системы;

    настройте также:

    • доступ по 22 порту (ssh) для devops-инженера;

    • сетевой доступ по 22 порту (ssh) до всех серверов, на которые производится установка, в том числе до серверов под ETCD, nginx и других сервисов.

  2. Настройте DNS:

    Все сервера должны находить друг друга по FQDN (доменное имя локальной машины). Удобно использовать доменное имя для обозначения экземпляров Tarantool в кластере.

  3. Разбейте дисковое пространство в соответствии с рекомендациями для оптимальной работы экземпляров Tarantool:

    • журналы (logs) – 2 GB * количество экземпляров Tarantool, но не менее 15 GB;

    • журнал упреждающей записи (WAL) – 40–50% от RAM, используемого всеми экземплярами Tarantool;

    • снимки данных (snapshots) – 100–110% от RAM, используемого всеми экземплярами Tarantool.

    Разбейте диски в соответствие с расчетами и подключите директории с помощью команды mount.

    Подробная информация по расчету дисковой емкости приведена в соответствующем разделе.

  4. Скорректируйте параметры ядра:

    a. Задайте параметры overcommit по памяти:

    sudo cat << EOF >> /etc/sysctl.conf
    vm.overcommit_memory = 2
    vm.overcommit_ratio = 100
    EOF
    

    Примечание

    В случае виртуализации запрещено использовать overcommit по памяти и swap-раздел.

    b. При ошибочном завершении Tarantool должен быть создан coredump-файл, который понадобится нашим специалистам для исследования проблемы. Файлы должны собираться в доступную на запись директорию, иметь в названии PID, signal и timestamp. Для корректного сохранения отладочной информации потребуются следующие настройки:

    sudo cat << EOF >> /etc/sysctl.conf
    kernel.core_uses_pid = 1
    kernel.core_pattern = /app/tarantool/coredump/core-%e-%u-%g-%p-%t
    EOF
    

    c. Настройте пул портов для исходящих запросов.

    Исходящие соединения могут занимать порты, предназначенные для бинарного протокола Tarantool.

    sudo cat << EOF >> /etc/sysctl.conf
    net.ipv4.ip_local_port_range = 32768   61000
    EOF
    
  5. Установите необходимое стороннее ПО:

    a. Установите etcd и убедитесь, что для него включена опция API V2, например, в файле конфигурации:

    enable-v2: true
    

    b. Установите nginx.

    c. Установите остальное необходимое ПО, список которого зависит от варианта установки Tarantool DB:

    • Установка Tarantool DB с помощью Docker:

      • Docker Engine версии не ниже 20.10.11.

    • Установка Tarantool DB с помощью Ansible:

      • Python 3.10.2 или новее.

      • Ansible 2.15.5 или новее.

      • pip модули urllib3==1.26, requests==2.31.0, etcd3==0.12.0.

  6. Установите вспомогательные утилиты:

    Примечание

    Некоторые утилиты могут быть предустановлены с ядром ОС. Нет необходимости обновлять их на последнюю версию.

    Команды для поддерживаемых ОС:

    • Для Astra Linux:

      sudo apt update
      sudo apt install -y \
               logrotate \        # Для ротации логов
               cronie \           # Утилита crontab
               gdb \              # Для сбора отладочной информации в случае падения
               gcore \            # Для создания coredump-файла на лету
               telnet \           # Для проверки сетевой связности узлов
               iperf3 \           #
               iptraf-ng \        #
               htop               # Более красивый top
      
    • Для РЕД ОС:

      sudo dnf install -y \
               logrotate \
               cronie \
               gdb \
               telnet \
               iperf3 \
               iptraf-ng \
               htop
      
  7. Создайте учетные записи:

    Создайте группу tarantool и локального пользователя tarantool для запуска и управления Tarantool:

    sudo groupadd -g 3301 tarantool
    sudo useradd -m -u 3301 -g 3301 --system tarantool
    

    Для корректной работы пользователя tarantool с systemctl в пользовательском окружении выполните команду:

    sudo loginctl enable-linger tarantool
    

    Аналогично tarantool, потребуются учетные записи для работы с инфраструктурными компонентами etcd и nginx. Соответствующие пользователи должны создаваться в процессе установки компонентов. Если этого не произошло, создайте их самостоятельно:

    sudo groupadd nginx
    sudo useradd -m -g nginx --system nginx
    
    sudo groupadd etcd
    sudo useradd -m -g etcd --system etcd
    
  8. Активируйте systemd userspace:

    sudo loginctl enable-linger tarantool
    
  9. Создайте директории для записи на диск:

    sudo mkdir -p /app/tarantool
    sudo mkdir -p /app/tarantool/coredump
    sudo mkdir -p /app/logs
    sudo mkdir -p /app/snap
    sudo mkdir -p /app/etcd
    sudo mkdir -p /app/nginx
    

    Задайте права:

    sudo chown tarantool:tarantool /app/tarantool
    sudo chown tarantool:tarantool /app/tarantool/coredump
    sudo chown tarantool:tarantool /app/logs
    sudo chown tarantool:tarantool /app/snap
    sudo chown nginx:nginx /app/nginx
    sudo chown etcd:etcd /app/etcd
    
  10. Настройте лимиты для группы tarantool:

sudo cat << EOF >> /etc/security/limits.d/tarantool.conf
@tarantool    -   nproc   64000
@tarantool    -   nofile   64000
@tarantool    -   core   unlimited
EOF
  1. Настройте оркестратор:

a. Создайте systemd service-файлы (для РЕД ОС).

b. Включите персистентное хранилище journald (для РЕД ОС).

c. Выдайте sudo-права администратору Tarantool.

  Для обслуживания серверов с Tarantool удобно выделить некоторую доменную
  группу из AD. Этой группе выдайте соответствующие права на переход под
  пользователей `tarantool`, `nginx` и `etcd`. Также нужны права на управление
  сервисами и просмотр журналов для `nginx` и `etcd`.

  Указанный список в формате `sudoers` выглядит примерно так:

  ```
  # пример для Astra Linux:

  %GROUP@domain.ru ALL=(tarantool) NOPASSWD: ALL

  %GROUP@domain.ru ALL=(nginx) NOPASSWD: ALL
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/systemctl start nginx
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/systemctl stop nginx
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/systemctl restart nginx
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/systemctl status nginx
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/systemctl reload nginx
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/systemctl enable nginx
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/systemctl disable nginx
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/journalctl -u nginx

  %GROUP@domain.ru ALL=(etcd) NOPASSWD: ALL
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/systemctl status etcd
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/systemctl restart etcd
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/systemctl reload etcd
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/systemctl start etcd
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/systemctl stop etcd
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/systemctl enable etcd
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/systemctl disable etcd
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/systemctl edit etcd
  %GROUP@domain.ru ALL=(ALL) NOPASSWD: /bin/journalctl -u etcd
  ```
  1. Настройте ротацию журналов:

    • Для Astra Linux:

      1. Убедитесь, что установлена утилита crontab.

      2. Добавьте пользователя tarantool в группу crontab.

        sudo usermod -a -G crontab tarantool
        
    • Для РЕД ОС:

      В РЕД ОС права на crontab организуются через файлы /etc/cron.allow и /etc/cron.deny. Проверьте, что выполняется любое из двух утверждений:

      • пользователь tarantool есть в файле /etc/cron.allow;

      • файла /etc/cron.allow нет, а файл /etc/cron.deny пуст (crontab доступен всем).

Чек-лист перед установкой

Перед запуском сценариев развертывания подготовьте:

  • инвентарь – описание топологии и настроек Tarantool DB (см. ниже);

  • пользователя для подключения к серверам по ssh. Может быть root. Должен иметь sudo права на логин под локального пользователя tarantool;

  • приватный ssh-ключ пользователя для подключения к серверам;

  • пакеты для нужного типа установки (Ansible-коллекция или Docker-контейнер).

Пример инвентаря

Пример инвентаря для Tarantool DB:

all:
  children:
    ROUTERS:
      hosts:
        tarantooldb-router-01:
        tarantooldb-router-02:
    STORAGES:
      hosts:
        tarantooldb-r01-s01:
        tarantooldb-r01-s02:
        tarantooldb-r02-s01:
        tarantooldb-r02-s02:
    STORAGES_GROUP_1:
      hosts:
        tarantooldb-r01-s01:
        tarantooldb-r02-s01:
    STORAGES_GROUP_2:
      hosts:
        tarantooldb-r01-s02:
        tarantooldb-r02-s02:
    replicaset_vag_router_01:
      hosts:
        tarantooldb-router-01:
      vars:
        failover_priority:
        - tarantooldb-router-01
        replicaset_alias: vag-router-01
        roles:
        - vshard-router
        - crud-router
        - failover-coordinator
        - space-explorer
        - migrator
        - dictionary.roles.router
    replicaset_vag_router_02:
      hosts:
        tarantooldb-router-02:
      vars:
        failover_priority:
        - tarantooldb-router-02
        replicaset_alias: vag-router-02
        roles:
        - vshard-router
        - crud-router
        - failover-coordinator
        - space-explorer
        - migrator
        - dictionary.roles.router
    replicaset_vag_storage_01:
      hosts:
        tarantooldb-r01-s01:
        tarantooldb-r01-s02:
      vars:
        failover_priority:
        - tarantooldb-r01-s02
        - tarantooldb-r01-s01
        replicaset_alias: vag-storage-01
        roles:
        - vshard-storage
        - crud-storage
        - space-explorer
        - expirationd
        - dictionary.roles.storage
    replicaset_vag_storage_02:
      hosts:
        tarantooldb-r02-s01:
        tarantooldb-r02-s02:
      vars:
        failover_priority:
        - tarantooldb-r02-s02
        - tarantooldb-r02-s01
        replicaset_alias: vag-storage-02
        roles:
        - vshard-storage
        - crud-storage
        - space-explorer
        - expirationd
        - dictionary.roles.storage
    tarantooldb_test_env_1:
      hosts:
        tarantooldb-r01-s01:
        tarantooldb-r02-s01:
        tarantooldb-router-01:
      vars:
        ansible_user: '{{ super_user }}'
    tarantooldb_test_env_2:
      hosts:
        tarantooldb-r01-s02:
        tarantooldb-r02-s02:
        tarantooldb-router-02:
      vars:
        ansible_user: '{{ super_user }}'
  hosts:
    tarantooldb-r01-s01:
      config:
        advertise_uri: '{{ internal_ip }}:3301'
        http_port: 8091
        log: /app/logs/tarantooldb/tarantooldb-r01-s01.log
        memtx_memory: 536870912 #512MiB
        vinyl_cache: 0
        vinyl_memory: 0
    tarantooldb-r01-s02:
      config:
        advertise_uri: '{{ internal_ip }}:3301'
        http_port: 8091
        log: /app/logs/tarantooldb/tarantooldb-r01-s02.log
        memtx_memory: 536870912 #512MiB
        vinyl_cache: 0
        vinyl_memory: 0
    tarantooldb-r02-s01:
      config:
        advertise_uri: '{{ internal_ip }}:3302'
        http_port: 8092
        log: /app/logs/tarantooldb/tarantooldb-r02-s01.log
        memtx_memory: 536870912 #512MiB
        vinyl_cache: 0
        vinyl_memory: 0
    tarantooldb-r02-s02:
      config:
        advertise_uri: '{{ internal_ip }}:3302'
        http_port: 8092
        log: /app/logs/tarantooldb/tarantooldb-r02-s02.log
        memtx_memory: 536870912 #512MiB
        vinyl_cache: 0
        vinyl_memory: 0
    tarantooldb-router-01:
      config:
        advertise_uri: '{{ internal_ip }}:3303'
        http_port: 8093
        log: /app/logs/tarantooldb/tarantooldb-router-01.log
        vinyl_cache: 0
        vinyl_memory: 0
    tarantooldb-router-02:
      config:
        advertise_uri: '{{ internal_ip }}:3303'
        http_port: 8093
        log: /app/logs/tarantooldb/tarantooldb-router-02.log
        vinyl_cache: 0
        vinyl_memory: 0
  vars:
    ansible_ssh_common_args: -o IdentitiesOnly=yes -o UserKnownHostsFile=/dev/null
      -o StrictHostKeyChecking=no
    ansible_ssh_retries: 5
    cartridge_app_directory: /app/tarantool/tarantooldb
    cartridge_app_group: tarantool
    cartridge_app_name: tarantooldb
    cartridge_app_user: tarantool
    cartridge_bootstrap_vshard: true
    cartridge_defaults:
      log_level: 5
    etcd_cluster_prefix: /cluster
    cartridge_instances_templates:
    - tarantooldb-r[0-9][0-9]-s[0-9][0-9]
    - tarantooldb-router-[0-9][0-9]
    cartridge_keep_num_latest_dists: 10
    cartridge_log_dir_parent: /app/logs/tarantooldb
    cartridge_memtx_dir_parent: /app/snap/tarantooldb
    cartridge_run_dir: /app/tarantool/tarantooldb/run
    cartridge_cluster_cookie: tarantooldb-test

Установка с использованием Ansible

Установка Ansible-коллекции инсталлятора

Для установки Ansible-коллекции инсталлятора Ansible Tarantool Enterprise требуется архив с инсталлятором ATE, полученный по почте или скачанный в личном кабинете tarantool.io из раздела ansible. Архив имеет вид tarantool-enterprise-<VERSION>.tar.gz, где VERSION – нужная версия инсталлятора ATE.

Установите Ansible-коллекцию, используя ansible-galaxy:

ansible-galaxy collection install --force tarantool-enterprise-${VERSION}.tar.gz

Финальная настройка сервера под Tarantool

Важно

Сейчас роль не создает пользователей и верхнеуровневые директории в /app. Для этого требуется root доступ, который обычно не предоставляется Ansible. Пожалуйста, настройте сервера согласно инструкциям техподдержки.

Роль tarantool.enterprise.os_configure выполняет следующие функции:

  • определяет, поддерживается ли текущая операционная система;

  • создает systemd unit-файлы в домашней директории пользователя tarantool.

ATE не использует механизм gather_facts по умолчанию, поэтому многие плейбуки начинаются с тасков find_os.yml для определения операционной системы. Добавьте вызов роли tarantool.enterprise.os_configure перед использованием других ролей из ATE:

- ansible.builtin.import_role:
    name: tarantool.enterprise.os_configure
    tasks_from: find_os.yml

Запуск роли целиком (main.yml) создаст unit-файлы.

- ansible.builtin.import_role:
    name: tarantool.enterprise.os_configure

Примечание

Если запрещено использовать userspace, активируйте запуск из-под sudo. Для этого:

  • создайте unit-файлы в /etc/systemd/system;

  • передайте параметр -e tarantool_systemd_userspace_supported_os=[] через extra vars.

Управление сервисами будет происходить с помощью команд sudo systemctl start/stop/restart.

Параметры become_* и hosts в плейбуках

Есть специальный набор переменных, которые регулируют, каким образом запускаются плейбуки:

  • tarantool_shared_become_user – выставляет значение переменной ansible_become_user. Значение по умолчанию: tarantool;

  • tarantool_shared_become_method – выставляет значение переменной ansible_become_method. Значение по умолчанию: sudo;

  • tarantool_shared_become – выставляет значение параметра become в плейбуках. Значение по умолчанию: true;

  • tarantool_shared_hosts – выставляет значение параметра hosts в плейбуках. В большинстве плейбуков значением по умолчанию является all. Исключением являются сценарии для TCF.

Комбинирование сценариев

Вы можете управлять tarantool_shared_hosts для создания сложных сценариев с использованием плейбуков из коллекции.

Предположим, у вас в инвентаре есть группы ACTIVE и RESERVE, которые состоят из активных и резервных экземпляров Tarantool соответственно. Сложный сценарий обновления без простоя можно сделать так:

- name: Switch leaders to RESERVE datacenter
  ansible.builtin.import_playbook: tarantool.enterprise.switch_leaders_to
  vars:
    tarantool_shared_hosts: "RESERVE"

- name: Update ACTIVE datacenter
  ansible.builtin.import_playbook: tarantool.enterprise.update_internal
  vars:
    tarantool_shared_hosts: "ACTIVE"

- name: Wait for cluster to become healthy
  ansible.builtin.import_playbook: tarantool.enterprise.wait_is_healthy
  vars:
    tarantool_shared_hosts: "all"

- name: Return leaders to ACTIVE datacenter
  ansible.builtin.import_playbook: tarantool.enterprise.switch_leaders_to
  vars:
    tarantool_shared_hosts: "ACTIVE"

- name: Update RESERVE datacenter
  ansible.builtin.import_playbook: tarantool.enterprise.update_internal
  vars:
    tarantool_shared_hosts: "RESERVE"

- name: Wait for cluster to become healthy
  ansible.builtin.import_playbook: tarantool.enterprise.wait_is_healthy
  vars:
    tarantool_shared_hosts: "all"

Аналогичный механизм реализован в плейбуке tarantool.enterprise.update_2x из коллекции.

Роль tarantool.enterprise.cartridge

Роль используется для работы с приложениями на Tarantool Cartridge.

Полностью вшитая open-source роль tarantool.cartridge. Документация доступна на GitHub: https://github.com/tarantool/ansible-cartridge?tab=readme-ov-file#documentation .

Особенности использования в составе коллекции:

  • Необходимо корректно указать путь до директории custom_steps/ в переменной cartridge_custom_steps_dir.

  • Переменная cartridge_scenario должна быть объявлена и иметь тип List. Можно использовать переменную cartridge_scenario_name, чтобы указать исполняемую последовательность по умолчанию. В таком случае указывать cartridge_scenario нужно только при желании изменить стандартное исполнение.

Установка с использованием Docker

Установка Docker-образа инсталлятора

Для установки Tarantool DB с помощью Docker-образа требуется архив с инсталлятором Ansible Tarantool Enterprise, полученный по почте или скачанный в личном кабинете tarantool.io из раздела ansible. Архив с инсталлятором имеет вид ansible-tarantool-enterprise-<VERSION>.tar.gz, где VERSION – нужная версия инсталлятора ATE.

Загрузите образ инсталлятора в Docker:

docker load -i ansible-tarantool-enterprise-${VERSION}.tar.gz

Результат будет выглядеть так:

docker load -i ansible-tarantool-enterprise-1.1.0.tar.gz
8d3ac3489996: Loading layer  5.866MB/5.866MB
f57e81d89e60: Loading layer  2.909MB/2.909MB
9a922de0e682: Loading layer  33.94MB/33.94MB
4e4052a4ca72: Loading layer  4.608kB/4.608kB
d381d1fc27a6: Loading layer  8.777MB/8.777MB
941b2bc3646f: Loading layer  229.6MB/229.6MB
1af66bf9d305: Loading layer  2.048kB/2.048kB
c99d8e39ed3d: Loading layer  18.12MB/18.12MB
789b0308f31e: Loading layer   2.56kB/2.56kB
f6ea54d7a7c0: Loading layer  548.2MB/548.2MB
f87ddf0cc792: Loading layer  116.2kB/116.2kB
aef42c359c22: Loading layer  1.221MB/1.221MB
92f78bbeec79: Loading layer  231.9kB/231.9kB
af4c3ed9156a: Loading layer  11.26kB/11.26kB
3945ec9aefd5: Loading layer  99.84kB/99.84kB
cdf5064a536a: Loading layer  1.821MB/1.821MB
Loaded image: ansible-tarantool-enterprise:1.1.0

Чтобы упростить работу с Docker-образом, можно добавить для него тег latest:

```bash
docker image tag ansible-tarantool-enterprise:${VERSION} ansible-tarantool-enterprise:latest
```

Инструкция по запуску кластера через ATE приведена в разделе Запуск кластера через Ansible Tarantool Enterprise.

Переменные окружения

В документации встречаются следующие переменные окружения:

  • DEPLOY_TOOL_VERSION_TAG (string) – версия инсталлятора;

  • LIMIT (string) – указание Ansible, на каких хостах или группах хостов производить действия.

    Примечание

    Переменная LIMIT – обычный параметр limit для Ansible. Указывать limit можно для любого плейбука. В некоторых случаях - обязательно. Можно использовать специальное значение лимита all, чтобы запустить сценарий на всех экземплярах Tarantool.

  • PACKAGE_NAME (string) – название архива Tarantool DB;

  • PATH_TO_INVENTORY (string) – полный путь к файлу инвентаря;

  • PATH_TO_PACKAGE (string) – путь к архиву Tarantool DB;

  • PATH_TO_PRIVATE_KEY (string) – полный путь к приватному ключу;

  • SUPER_USER_NAME (string) – имя пользователя для подключения по SSH.

Дополнительные переменные окружения описаны в каждом пункте по мере необходимости.

Примечание

Часть переменных используется внутри контейнера во время запуска плейбука. Значения переменных передаются в контейнер с помощью опции -e.

Нашли ответ на свой вопрос?
Обратная связь