Установка распределенного SimpleOne 1.17.1

При установке используются VM, уже соответствующие требованиям к установке по схеме:

Предоставленные VM:

Из них jumphost-distributed.simpleone.ru используется только для запуска ansible.
Дистрибутив 1.17.1-2.

  1. Распаковка дистрибутива
cd /opt/
tar -xvf release-*.tar.gz

  1. Подготовка конфигурационных файлов

Переходим в директорию
cd release-1-17-1-2/inventory/
Копируем inventory и переходим в нее
cp -r distributed distributed01

cd distributed01

Необходимо заполнить адреса VM
nano inventory.yml
image

По умолчанию представлен конфигурационный файл для минимальной конфигурации распределенного инстанса.
Для полной конфигурации необходимо добавить строки хостов в inventory.yml
image

ansible_user остается root, так как запускать будем от root
image

Далее файл необходимо сохранить.

Заполняем файл

../inventory/distributed/group_vars/all/backend

Тип инстанса будет ПРОД.

image

Также нам необходимо, чтобы worker b_rule и event было по 12 штук на каждом из backend

inventory/[single,distributed]/group_vars/all/monitoring - не трогаем, настройка мониторинга не входит в данную инструкцию.

inventory/distributed/group_vars/all/system – оставляем значения по умолчанию.

Заполнение переменных inventory/[single,distributed]/group_vars/all/vars

imple_instance_name – краткое название экземпляра
imple_instance_url – url экземпляра
simple_admin_password – пароль администратора
s3_url – URL для хранилища
s3_console_url - URL для консоли s3
s3_access_key – ключ доступа для s3 хранилища
s3_secret_key – секретный ключ для s3 хранилища
postgres_user – имя пользователя БД
postgres_pass – пароль пользователя БД
postgres_user_ro – имя пользователя БД только для чтения
postgres_pass_ro –пароль пользователя БД только для чтения

Важно помнить, что использование спец. символов для логина и пароля к БД не рекомендуется. Также для имени пользователя зарезервированы следующие пользователи: admin, cron_admin, robot_zmon, standby, user, zalandos – их использование может привести к ошибкам при разворачивании БД.

Также нужно указать SSL-сертификат:

vault_cert_crt – полная цепочка сертификатов.
Цепочка должна начинаться с сертификата конечного экземпляра,
затем промежуточный сертификат, затем корневой CA.

vault_cert_key – приватный ключ

vault_additional_ca_cert – собственная цепочка сертификатов, состоящая из сертификата центра авторизации и промежуточных сертификатов, заполняется при самоподписном сертификате.
new_sla_enabled: false
Не включаем новую SLA в рамках данной инструкции.

image

Далее необходимо проверить корректность заполнения.
На VM, с которой будет производиться установка, необходимо из директории с файлом complex-offline.yml, выполнить команду:

ansible-playbook complex-offline.yml -i ‘<path-to-inventory>’ - CD, где
– относительный путь до директории, содержащей файл inventory.yml.
В результате будет проверена корректность заполнения inventory, переменных и доступов до хостов, где будет разворачиваться платформа SimpleOne.
В случае обнаружения ошибок рекомендуется повторно проверить доступы к хостам и корректность заполнения переменных в inventory. К следующему пункту можно приступать только после устранения всех ошибок.
В итоге команда имеет такой вид:
ansible-playbook complex-offline.yml -i '/opt/release-1-17-1-2/inventory/distributed01/inventory.yml' -CD

После прохождения тестов выдается отчет:

В данном случае все в порядке.
После того как была произведена проверка корректности заполнения inventory, необходимо из директории, в которой находится файл complex-offline.yml, выполнить команду:
ansible-playbook complex-offline.yml -i ‘’, где
– относительный путь до директории, содержащей файл inventory.yml. В файле complex-offline.yml указан порядок разворачивания инфраструктурных компонентов, который можно использовать в случае возникновения проблем на каких-либо этапах установки.

В итоге команда будет иметь следующий вид:
ansible-playbook complex-offline.yml -i '/opt/release-1-17-1-2/inventory/distributed01/inventory.yml'
В конце установки наблюдаем отчет.

Инстанс открывается из web:

Для входа необходимо будет ввести логин admin
И пароль, который был настроен в vars.yml