При установке используются VM, уже соответствующие требованиям к установке по схеме:
Предоставленные VM:
VM name | ip |
---|---|
frontend01-distributed.simpleone.ru | 10.170.0.162 |
frontend02-distributed.simpleone.ru | 10.170.0.163 |
backend01-distributed.simpleone.ru | 10.170.0.164 |
backend02-distributed.simpleone.ru | 10.170.0.165 |
database01-distributed.simpleone.ru | 10.170.0.170 |
database02-distributed.simpleone.ru | 10.170.0.173 |
storage01-distributed.simpleone.ru | 10.170.0.174 |
storage02-distributed.simpleone.ru | 10.170.0.175 |
storage03-distributed.simpleone.ru | 10.170.0.176 |
storage04-distributed.simpleone.ru | 10.170.0.177 |
queue01-distributed.simpleone.ru | 10.170.0.191 |
queue02-distributed.simpleone.ru | 10.170.0.192 |
cache01-distributed.simpleone.ru | 10.170.0.193 |
queue03-distributed.simpleone.ru | 10.170.0.203 |
cache02-distributed.simpleone.ru | 10.170.0.204 |
queue04-distributed.simpleone.ru | 10.170.0.205 |
etcd01-distributed.simpleone.ru | 10.170.0.202 |
jumphost-distributed.simpleone.ru | 10.170.0.159 |
Из них jumphost-distributed.simpleone.ru используется только для запуска ansible.
Дистрибутив 1.17.1-2.
- Распаковка дистрибутива
cd /opt/
tar -xvf release-*.tar.gz
- Подготовка конфигурационных файлов
Переходим в директорию
cd release-1-17-1-2/inventory/
Копируем inventory и переходим в нее
cp -r distributed distributed01
cd distributed01
Необходимо заполнить адреса VM
nano inventory.yml
По умолчанию представлен конфигурационный файл для минимальной конфигурации распределенного инстанса.
Для полной конфигурации необходимо добавить строки хостов в inventory.yml
ansible_user остается root, так как запускать будем от root
Далее файл необходимо сохранить.
Заполняем файл
../inventory/distributed/group_vars/all/backend
Тип инстанса будет ПРОД.
Также нам необходимо, чтобы 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 в рамках данной инструкции.
Далее необходимо проверить корректность заполнения.
На 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