Быстрое развертывание платформы#
Быстрое развертывание платформы Astra Automation предназначено для получения оперативного доступа к системе и ознакомления с ее базовыми возможностями.
В этом сценарии утилита развертывания aa-setup запускает все компоненты платформы в контейнерах Podman на одном узле:
шлюз платформы (Platform Gateway);
Automation Controller;
Private Automation Hub;
Event-Driven Automation;
СУБД PostgreSQL;
Redis.
Automation Dashboard в этот сценарий не входит, так как его развертывают на отдельном узле (см. описание развертывания Automation Dashboard).
Предупреждение
Развертывание всех компонентов на одном узле допустимо только в ознакомительных целях. Такая конфигурация не обеспечивает отказоустойчивость и не предназначена для эксплуатации в промышленных рабочих окружениях. Подробное описание контейнерного способа развертывания приведено в руководстве по планированию.
Предварительные требования#
Для развертывания платформы потребуются подписка и узел, отвечающий приведенным далее требованиям.
Программное обеспечение платформы#
Для использования платформы необходима подписка. Чтобы получить пробную подписку, перейдите на сайт Astra Automation и нажмите кнопку Запросить пробную версию платформы бесплатно.
Утилита развертывания устанавливается из репозитория Astra Automation, а образы компонентов платформы она загружает из реестра registry.astra.ru.
Загружать установочный пакет из Личного кабинета в этом сценарии не требуется.
Рабочее окружение#
Для развертывания платформы понадобится узел в виде ВМ или физического компьютера, обладающий характеристиками не ниже указанных.
Характеристика |
Значение |
|---|---|
Операционная система |
Astra Linux Special Edition 1.8.6 |
Количество ядер CPU |
4 |
Объем RAM, ГБ |
16 |
Тип диска |
SSD |
Объем диска, ГБ |
60 |
Важно
Утилита развертывания прерывает работу, если объем памяти узла (значение MemTotal в файле /proc/meminfo) меньше 15000 МБ.
Узел с 16 ГБ RAM этому требованию соответствует.
Кроме того, узел должен соответствовать следующим требованиям:
узел имеет доступ в интернет, в том числе к ресурсам
download.astralinux.ru,dl.astralinux.ruиregistry.astra.ru;к узлу есть доступ по протоколу SSH под учетной записью пользователя, который может выполнять команды с помощью
sudo.
Развертывание от имени пользователя root не поддерживается.
Подготовка узла#
Для подготовки узла выполните следующие действия:
Подключитесь к узлу по SSH.
Разрешите выполнение команд
sudoбез ввода пароля:sudo astra-sudo-control disable
Утилита развертывания выполняет часть команд с привилегиями суперпользователя с помощью
sudoи в процессе работы пароль не запрашивает.
В каталоге
/etc/apt/sources.list.d/создайте файлastra-automation.listсо ссылкой на репозиторий Astra Automation:deb https://dl.astralinux.ru/aa/aa-debs-for-alse-1.8 <version> main
Вместо <version> необходимо подставить версию устанавливаемой платформы, например,
2.1.Доступные версии продукта опубликованы в таблице История обновлений.
Обновите список доступных пакетов:
sudo apt update
Установите пакет
astra-automation-setup:sudo apt install astra-automation-setup --yes
Пакет устанавливает утилиту развертывания в каталог
/opt/rbta/aa/astra-automation-setup/.
Развертывание платформы#
Для развертывания платформы выполните следующие действия:
Определите IP-адрес узла:
hostname -IЕсли команда выводит несколько адресов, выберите тот, по которому узел доступен с рабочей станции.
Создайте в домашнем каталоге файл описания инвентаря, например с помощью текстового редактора
nano:nano ~/inventoryПоместите в файл следующее описание инвентаря:
[automationgateway] <node_ip> [automationcontroller] <node_ip> [automationhub] <node_ip> [automationedacontroller] <node_ip> [database] <node_ip> [all:vars] ansible_connection=local ansible_python_interpreter=/usr/bin/python3 admin_username=admin admin_password='<admin_password>' postgres_password='<postgres_password>' controller_pg_password='<controller_pg_password>' hub_pg_password='<hub_pg_password>' gateway_pg_password='<gateway_pg_password>' eda_pg_password='<eda_pg_password>' redis_mode=standalone controller_uwsgi_processes=3 gateway_uwsgi_processes=3 gateway_grpc_server_processes=2 hub_api_workers=3 hub_content_workers=1 hub_workers=1 eda_gunicorn_workers=3 eda_workers=1
Здесь:
<node_ip>– IP-адрес узла, определенный ранее;<admin_password>– пароль учетной записи администратора платформыadmin;<postgres_password>– пароль администратора СУБД PostgreSQL (учетная записьpostgres), которую утилита развертывания устанавливает на узле; от имени этой учетной записи утилита создает базы данных и пользователей компонентов платформы;<controller_pg_password>,<hub_pg_password>,<gateway_pg_password>,<eda_pg_password>– пароли пользователей СУБД PostgreSQL, которые утилита развертывания создает для компонентов платформы.
Параметр
ansible_connection=localуказывает утилите развертывания выполнять команды на том же узле, на котором она запущена, без подключения по SSH. Параметрredis_mode=standaloneнеобходим, так как для кластера Redis требуется не менее шести узлов.Последние восемь параметров ограничивают число рабочих процессов компонентов платформы. С этими значениями компоненты занимают около 5 ГБ RAM. Без них число рабочих процессов зависит от количества ядер CPU, поэтому на узле с четырьмя ядрами компоненты занимают около 8,5 ГБ RAM, а на узле с большим количеством ядер – больше.
Предупреждение
Значения параметров
controller_uwsgi_processes,gateway_uwsgi_processes,gateway_grpc_server_processes,hub_api_workers,hub_content_workers,hub_workers,eda_gunicorn_workersиeda_workersв примере занижены, чтобы платформа работала на узле с небольшим объемом памяти. Используйте их только для развертывания стенда в ознакомительных целях. Не переносите эти значения в производственную среду: платформа будет медленнее отвечать на запросы, а задачи в Private Automation Hub будут ждать в очереди.Запретите чтение файла другим пользователям, так как он содержит пароли:
chmod 600 ~/inventory
Перейдите в каталог утилиты развертывания:
cd /opt/rbta/aa/astra-automation-setup
Запустите развертывание от имени текущего пользователя:
./aa-setup --containerized -i ~/inventory -p ~
Здесь:
-i ~/inventory– путь к файлу описания инвентаря;-p ~– каталог для журнала развертыванияsetup.log.
Утилиту нельзя запускать с помощью
sudoили от имени пользователяroot, так как контейнеры платформы должны работать от имени обычного пользователя, а команды, требующие привилегий суперпользователя, утилита выполняет с помощьюsudoсама. Утилита развертывания загружает образы компонентов из реестра, запускает контейнеры и настраивает компоненты платформы. Развертывание занимает около 40 минут.Важно
Не закрывайте сеанс SSH до завершения развертывания. При закрытии сеанса Astra Linux Special Edition завершает запущенные в нем процессы, в том числе утилиту развертывания.
После успешного развертывания утилита выводит сообщение следующего вида:
Значение
failed=0в строкахPLAY RECAPозначает, что развертывание завершилось успешно. Значения остальных счетчиков могут отличаться.Отключите автоматический запуск службы
podman.serviceдля всех пользователей:sudo systemctl --global disable podman.service
Если эта служба запускается при загрузке ОС одновременно с контейнерами платформы, контейнеры могут не запуститься. Для работы платформы и выполнения заданий автоматизации достаточно службы
podman.socket, которая остается включенной.
Получение доступа к интерфейсу платформы#
Для первоначальной настройки платформы выполните следующие действия:
Откройте в браузере на рабочей станции адрес
https://<node_ip>/.При первом подключении браузер выводит предупреждение о том, что подключение не защищено. Это нормальное поведение, поскольку для защиты подключения шлюз платформы использует самоподписанный сертификат. При использовании браузера на основе Chromium выполните следующие действия:
Нажмите кнопку Дополнительные.
Нажмите ссылку Перейти на сайт <IP> (небезопасно).
Для аутентификации в интерфейсе платформы введите название учетной записи
adminи пароль, заданный в значенииadmin_password.Активируйте подписку, следуя инструкции.
Без активной подписки платформа не позволяет выполнять задания автоматизации и выводит сообщение
License is missing.
Перезагрузка узла#
После перезагрузки узла контейнеры платформы запускаются автоматически. Интерфейс платформы становится доступен в течение нескольких минут после загрузки ОС.
Если после перезагрузки интерфейс платформы недоступен, проверьте, отключен ли автоматический запуск службы podman.service:
systemctl --global is-enabled podman.service
Если команда выводит enabled, выполните следующие действия:
Отключите автоматический запуск службы
podman.service:sudo systemctl --global disable podman.service
Перезагрузите узел:
sudo systemctl reboot
Не восстанавливайте работу платформы вручную в сеансе SSH с помощью команд podman и systemctl --user, так как часть контейнеров при этом может не запуститься.
Заключение#
В этом сценарии вы познакомились с основными шагами по развертыванию платформы в контейнерах на одном узле. Из всей последовательности шагов важно выделить следующие действия:
Обеспечение предварительных требований.
Подготовка узла и установка утилиты развертывания.
Описание инвентаря и развертывание платформы.
Обеспечение доступа к интерфейсу платформы.
Активация подписки на использование платформы.
Выполнение первого задания автоматизации описано в инструкции Быстрый старт для администратора.