При установке в закрытом контуре (без доступа с сети Интернет или с существенными ограничениями доступа к сайтам) требуется использовать оффлайн установку NAICE. Данная установка включает в себя:
Подробное описание работы схемы: v1.0_3.4 Установка с резервированием
Для разворачивания NAICE в схеме с резервированием потребуется подготовить целевые VM для установки в соответствие с требованиями v1.0_3.1 Системные требования.
При установке на ОС Astra Linux версии 1.7.6 и выше с установленным обновлением БЮЛЛЕТЕНЬ № 2024-1108SE17MD необходимо отключить контроль разрешения исполнения кода в программном стеке в соответствие с инструкцией Нарушение работы некоторых программ после установки оперативного обновления Astra Linux Special Edition 1.7.6 ! В противном случае запуск ПО NAICE будет невозможен! |
Так же требуется подготовить отдельную VM для запуска плейбуков Ansible.
Развернуть VM.
Установить пакет docker.io из официального репозитория Astra Linux:
sudo apt install docker.io -y |
Дополнение docker compose нельзя установить из репозитория Astra Linux т.к. там находиться старая версия. Требуется загрузить его с нашего сайта по ссылке https://cloud.eltex-co.ru/index.php/s/yKlAcy83VVPEfzx на целевой хост:
wget https://cloud.eltex-co.ru/index.php/s/yKlAcy83VVPEfzx/download -O docker-compose-linux-x86_64 |
На целевом хосте создать папку:
sudo mkdir -pv /usr/local/lib/docker/cli-plugins |
Поместить в неё скачанный файл download под именем docker-compose:
sudo mv -v docker-compose-linux-x86_64 /usr/local/lib/docker/cli-plugins/docker-compose |
Семенить владельца файла на root:
sudo chown root:root -v /usr/local/lib/docker/cli-plugins/docker-compose |
Сделать файл исполняемым:
sudo chmod 755 -v /usr/local/lib/docker/cli-plugins/docker-compose |
Проверить корректность установки и версии docker и docker-compose:
|
|
Установить пакеты и все необходимые пакеты и зависимости из официального репозитория Astra Linux:
sudo apt install python3-psycopg2 python3-apt python3-requests keepalived logrotate -y |
VM на которых будет развернут кластер СУБД PostgreSQL:
sudo apt install python3-psycopg2 python3-apt python3-requests -y |
VM на которых будет развернут кластер NAICE:
sudo apt install python3-psycopg2 python3-apt python3-requests keepalived logrotate -y |
Для запуска плейбуков Ansible требуется использовать VM с ОС Ubuntu 24! |
Установить пакеты ansible со всеми зависимостями и прочее необходимое ПО:
sudo apt install ansible sshpass -y |
Убедиться, что установлена версия Ansible 2.16.3:
Использование другой версии Ansible может привести к некорректному поведению в ходе установки! |
Загрузить на хост выполнения плейбуков ansible архив с образами контейнеров NAICE и плейбуками установки.
Прямая ссылка на скачивание архива: https://cloud.eltex-co.ru/index.php/s/PEBvftmNhIirx3F
Можно скачать командой wget на целевой хост, если открыть доступ к адресу https://cloud.eltex-co.ru:
wget https://cloud.eltex-co.ru/index.php/s/B8XthRBYSqupfDE/download -O naice_install_2025-11-14.tar.gz |
Распаковать на целевом хосте полученный архив и перейти в директорию ansible внутри полученной директории:
tar xzvf naice_install_2025-11-14.tar.gz cd naice_install/ansible |
Отредактировать файл inventory/hosts-cluster.yml, указав необходимые целевые адреса установки, логин/пароль для доступа:
---
# Local actions
all:
hosts:
localhost:
ansible_connection: local
ansible_user: <логин пользователя хоста, под которым выполняется запуск плейбука>
ansible_ssh_pass: <пароль пользователя хоста, под которым выполняется запуск плейбука>
ansible_become_password: <пароль для повышения привилегий (sudo) пользователя хоста, под которым выполняется запуск плейбука>
# Группа хостов для установки NAICE с резервированием
reservation:
hosts:
master_host:
ansible_host: <IP-адрес хоста 1 для NAICE>
ansible_port: 22
ansible_user: <логин пользователя>
ansible_ssh_pass: <пароль пользователя>
ansible_become_password: <пароль для повышения привилегий (sudo)>
keepalived_interface: <наименование интерфейса, на котором будет настроен VIP-адрес, например eth0>
backup_host:
ansible_host: <IP-адрес хоста 2 для NAICE>
ansible_port: 22
ansible_user: <логин пользователя>
ansible_ssh_pass: <пароль пользователя>
ansible_become_password: <пароль для повышения привилегий (sudo)>
keepalived_interface: <наименование интерфейса, на котором будет настроен VIP-адрес, например eth0>
vars:
keepalived_vip: <VIP-адрес, без маски, например 192.168.0.11>
# Группа хостов для установки postgres-cluster (primary + standby)
postgres-cluster:
hosts:
node_primary:
ansible_host: <IP-адрес хоста для node-1 PostgreSQL>
ansible_port: 22
ansible_user: <логин пользователя>
ansible_ssh_pass: <пароль пользователя>
ansible_become_password: <пароль для повышения привилегий (sudo)>
forwarded_postgresql_port: 5432
forwarded_ssh_port: 15432
node_standby:
ansible_host: <IP-адрес хоста для node-2 PostgreSQL>
ansible_port: 22
ansible_user: <логин пользователя>
ansible_ssh_pass: <пароль пользователя>
ansible_become_password: <пароль для повышения привилегий (sudo)>
forwarded_postgresql_port: 5432
forwarded_ssh_port: 15432 |
При разворачивании NAICE на двух хостах IP-адреса целевых хостов для установки совпадают для |
Выполнить плейбук:
ansible-playbook install-postgres-cluster.yml -i inventory/hosts-cluster.yml |
Результатом выполнения плейбука будет установка СУБД PostgreSQL в кластере на серверах, указанных в node_primary и node_standby. Мастер-нода кластера будет находиться на хосте node_primary.
Проверить состояние кластера СУБД PostgreSQL в соответствии с инструкцией Проверка состояния кластера PostgreSQL.
Перед установкой необходимо убедиться, что роль Primary принадлежит ноде PostgreSQL, указанной в переменной node_primary "ansible_host". При необходимости выполнить переключение роли Primary. В противном случае установка не сможет быть завершена. |
Для установки необходимо выполнить плейбук:
ansible-playbook reservation-naice-services.yml -i inventory/hosts-cluster.yml |
После установки проверить состояние кластера NAICE в соответствии с инструкцией Проверка состояния кластера NAICE.