Подготовка
Скачивание архива для оффлайн установки
Скачать архив офлайн установки (пример скачивания утилитой wget):
wget https://cloud.eltex-co.ru/index.php/s/KnrQ1cXuZsabGYh/download -O naice_install_2026-03-27.tar.gz
Распаковать его (пример с использованием архиватора tar):
tar xzvf naice_install_2026-03-27.tar.gz
Перенести на виртуальные машины с установленным NAICE и СУБД PostgreSQL архив naice_images.tar, расположенного по пути после распаковки архива :
naice_install/naice_images/naice_images.tar
Загрузка образов контейнеров
На каждом хосте загрузить образы контейнеров командой:
sudo docker load -i naice_images.tar
Остановка сервисов NAICE
На каждом хосте перейти в папку с установленным NAICE и СУБД PostgreSQL (про умолчанию /etc/docker-naice):
cd /etc/docker-naice/
Остановить сервисы NAICE на каждой ноде:
sudo docker compose down
Если используется схема с резервированием - остановить СУБД PostgreSQL на каждой ноде:
# для первой ноды СУБД sudo docker compose -f docker-compose.repmgr.yml down postgres-1 # для второй ноды СУБД sudo docker compose -f docker-compose.repmgr.yml down postgres-2
Обновление переменных в файлах конфигурации
На каждом хосте перейти в папку с установленными NAICE и СУБД PostgreSQL (про умолчанию /etc/docker-naice):
cd /etc/docker-naice/
Обновление переменных, для любого типа инсталляции (одиночная или с резервированием)
Файл docker-compose.yml не требует изменений.
Файл .env
Изменить версию образа СУБД PostgreSQL с 1.1.6 на 1.1.7
POSTGRES_VERSION_TAG: 1.1.7
Пример изменения с использованием утилиты sed:
sudo sed -i 's/POSTGRES_VERSION_TAG\:\ 1.1.6/POSTGRES_VERSION_TAG\:\ 1.1.7/g' .env
Изменить таймауты подключения к БД в файле .env:
OVIS_DB_POOL_CONNECTION_LIFETIME: 600000 OVIS_SESSIONS_DB_POOL_CONNECTION_LIFETIME: 600000 AQUILA_DB_POOL_CONNECTION_LIFETIME: 600000 CASTOR_DB_POOL_CONNECTION_LIFETIME: 600000 MUSTELA_DB_POOL_CONNECTION_LIFETIME: 600000 PHOCA_DB_POOL_CONNECTION_LIFETIME: 600000 CETUS_DB_POOL_CONNECTION_LIFETIME:600000
Пример изменения с использованием утилиты sed:
sudo sed -i 's/CONNECTION_LIFETIME\:\ 1800000/CONNECTION_LIFETIME\:\ 600000/g' .env && sudo sed -i 's/CETUS_DB_POOL_CONNECTION_LIFETIME\:1800000/CETUS_DB_POOL_CONNECTION_LIFETIME\:\ 600000/g' .env
Добавить переменную сервиса naice-cetus в .env (после переменной CETUS_CACHE_TTL_S):
CETUS_USERS_CACHE_TTL_S: 10
Пример добавления с использованием утилиты sed:
Данную команду нельзя выполнять более одного раза, т.к. это приведёт к добавлению дублирующегося значения переменной!
sudo sed -i '/CETUS_CACHE_TTL_S\:300/a CETUS_USERS_CACHE_TTL_S\:\ 10' .env
Обновление переменных для инсталляции с резервированием
Для каждой ноды СУБД PostgreSQL зайти в папку установки (про умолчанию /etc/docker-naice):
cd /etc/docker-naice/
Изменить параметры файлов конфигурации СУБД для каждой ноды.
Файл docker-compose.repmgr.yml
В файле docker-compose.repmgr.yml изменить версию образа СУБД PostgreSQL c 1.1.6 на 1.1.7:
#deploy NAICE with Postgresql in cluster replication via Repmgr
services:
postgres-1:
container_name: naice-postgres-1
image: naice-build-hosted.registry.eltex.loc/naice/postgres-repmgr:1.1.7
Пример изменения с использованием утилиты sed:
sudo sed -i 's/postgres-repmgr\:1.1.6/postgres-repmgr\:1.1.7/g' docker-compose.repmgr.yml
Файл repmgr.env
В файл repmgr.env добавить в конце строки:
BITNAMI_DEBUG: False REPMGR_LOG_LEVEL: info
Пример добавления с использованием утилиты sed:
Данную команду нельзя выполнять более одного раза, т.к. это приведёт к добавлению дублирующегося значения переменной!
sudo sed -i '/REPMGR_UPGRADE_EXTENSION\:\ yes/a BITNAMI_DEBUG\:\ False' repmgr.env && sudo sed -i '/BITNAMI_DEBUG\:\ False/a REPMGR_LOG_LEVEL\:\ info' repmgr.env
Для каждой ноды NAICE зайти в папку установки (про умолчанию /etc/docker-naice):
cd /etc/docker-naice/
Изменить параметры файлов конфигурации NAICE для каждой ноды.
Файл .env
Добавить в строки подключения к БД &connectTimeout=5&socketTimeout=30
URSUS_POSTGRES_JDBC_URL:jdbc:postgresql://<Адрес БД ноды 1>:5432,<Адрес БД ноды 2>:5432/ursus?targetServerType=primary&connectTimeout=5&socketTimeout=30 LEMMUS_POSTGRES_JDBC_URL: jdbc:postgresql://<Адрес БД ноды 1>:5432,<Адрес БД ноды 2>:5432/lemmus?targetServerType=primary&connectTimeout=5&socketTimeout=30 OVIS_OVIS_POSTGRES_JDBC_URL: jdbc:postgresql://<Адрес БД ноды 1>:5432,<Адрес БД ноды 2>:5432/ovis?targetServerType=primary&connectTimeout=5&socketTimeout=30 LEPUS_POSTGRES_JDBC_URL: jdbc:postgresql://<Адрес БД ноды 1>:5432,<Адрес БД ноды 2>:5432/lepus?targetServerType=primary&connectTimeout=5&socketTimeout=30 AQUILA_POSTGRES_JDBC_URL: jdbc:postgresql://<Адрес БД ноды 1>:5432,<Адрес БД ноды 2>:5432/aquila?targetServerType=primary&connectTimeout=5&socketTimeout=30 BUBO_POSTGRES_JDBC_URL : jdbc:postgresql://<Адрес БД ноды 1>:5432,<Адрес БД ноды 2>:5432/bubo?targetServerType=primary&connectTimeout=5&socketTimeout=30 MUSTELA_POSTGRES_JDBC_URL: jdbc:postgresql://<Адрес БД ноды 1>:5432,<Адрес БД ноды 2>:5432/mustela?targetServerType=primary&connectTimeout=5&socketTimeout=30 PHOCA_POSTGRES_JDBC_URL: jdbc:postgresql://<Адрес БД ноды 1>:5432,<Адрес БД ноды 2>:5432/phoca?targetServerType=primary&connectTimeout=5&socketTimeout=30 CETUS_POSTGRES_JDBC_URL: jdbc:postgresql://<Адрес БД ноды 1>:5432,<Адрес БД ноды 2>:5432/cetus?targetServerType=primary&connectTimeout=5&socketTimeout=30
Пример изменения с использованием утилиты sed:
sudo sed -i 's/targetServerType=preferPrimary/targetServerType=primary\&connectTimeout=5\&socketTimeout=30/g' .env
Запуск сервисов NAICE
Одиночная (stand-alone) установка
Перейти в папку с установленным NAICE (про умолчанию /etc/docker-naice):
cd /etc/docker-naice/
Выполнить команду:
sudo docker compose up -d
Установка с резервированием
Запуск СУБД PostgreSQL
На каждом хосте перейти в папку с установленным СУБД PostgreSQL (про умолчанию /etc/docker-naice):
cd /etc/docker-naice/
Запустить СУБД на первой ноде:
sudo docker compose -f docker-compose.repmgr.yml up -d
Запустить СУБД на второй ноде:
sudo docker compose -f docker-compose.repmgr.yml up -d
В соответствии с инструкцией убедиться, что Primary стала первая нода, при необходимости перевести мастерство: v1.1_9.6.1 Диагностика состояния кластера БД PostgreSQL
Убедиться, что версия используемой СУБД 1.1.7, для этого на каждой ноде выполнить:
# Первая нода
sudo docker compose -f docker-compose.repmgr.yml ps -a
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
"java -cp @/app/jib-…" naice-phoca 6 minutes ago Up 5 minutes (healthy) 0.0.0.0:8097->8097/tcp, [::]:8097->8097/tcp
naice-postgres-1 hub.eltex-co.ru/naice/postgres-repmgr:1.1.7 "/opt/bitnami/script…" postgres-1 9 minutes ago Up 9 minutes (healthy) 0.0.0.0:5432->5432/tcp, [::]:5432->5432/tcp, 0.0.0.0:15432->22/tcp, [::]:15432->22/tcp
# Вторая нода
sudo docker compose -f docker-compose.repmgr.yml ps -a
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
naice-postgres-2 hub.eltex-co.ru/naice/postgres-repmgr:1.1.7 "/opt/bitnami/script…" postgres-2 8 minutes ago Up 8 minutes (healthy) 0.0.0.0:5432->5432/tcp, [::]:5432->5432/tcp, 0.0.0.0:15432->22/tcp, [::]:15432->22/tcp
Запуск сервисов NAICE
На каждом хосте перейти в папку с установленным NAICE (про умолчанию /etc/docker-naice):
cd /etc/docker-naice/
Запустить сервисы NAICE на первой ноде:
sudo docker compose up -d
После запуска сервисов на первой ноде выполнить запуск на второй:
sudo docker compose up -d
Проверка состояния NAICE
Одиночная (stand-alone) установка
Убедиться, что все сервисы запущены:
sudo docker compose ps -a NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS epg-service hub.eltex-co.ru/naice/epg-service:1.1-3 "/bin/sh -e /usr/loc…" epg-service 7 minutes ago Up 7 minutes (healthy) 0.0.0.0:8100->8100/tcp, [::]:8100->8100/tcp naice-aquila hub.eltex-co.ru/naice/naice-aquila:1.1 "java -cp @/app/jib-…" naice-aquila 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:5703->5703/tcp, [::]:5703->5703/tcp, 0.0.0.0:8091-8092->8091-8092/tcp, [::]:8091-8092->8091-8092/tcp, 0.0.0.0:49->1049/tcp, [::]:49->1049/tcp naice-bubo hub.eltex-co.ru/naice/naice-bubo:1.1 "java -cp @/app/jib-…" naice-bubo 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:5704->5704/tcp, [::]:5704->5704/tcp, 0.0.0.0:8093->8093/tcp, [::]:8093->8093/tcp naice-castor hub.eltex-co.ru/naice/naice-castor:1.1 "java -Djava.awt.hea…" naice-castor 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:5705->5705/tcp, [::]:5705->5705/tcp, 0.0.0.0:8095->8095/tcp, [::]:8095->8095/tcp naice-cetus hub.eltex-co.ru/naice/naice-cetus:1.1 "java -cp @/app/jib-…" naice-cetus 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:8099->8099/tcp, [::]:8099->8099/tcp naice-gavia hub.eltex-co.ru/naice/naice-gavia:1.1 "java -cp @/app/jib-…" naice-gavia 7 minutes ago Up 4 minutes (healthy) 0.0.0.0:8080->8080/tcp, [::]:8080->8080/tcp naice-gulo hub.eltex-co.ru/naice/naice-gulo:1.1 "java -cp @/app/jib-…" naice-gulo 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:8089->8089/tcp, [::]:8089->8089/tcp naice-lemmus hub.eltex-co.ru/naice/naice-lemmus:1.1 "java -cp @/app/jib-…" naice-lemmus 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:8083->8083/tcp, [::]:8083->8083/tcp naice-lepus hub.eltex-co.ru/naice/naice-lepus:1.1 "java -cp @/app/jib-…" naice-lepus 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:8087->8087/tcp, [::]:8087->8087/tcp, 0.0.0.0:67->1024/udp, [::]:67->1024/udp naice-mustela hub.eltex-co.ru/naice/naice-mustela:1.1 "java -cp @/app/jib-…" naice-mustela 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:8070->8070/tcp, [::]:8070->8070/tcp naice-nats hub.eltex-co.ru/naice/nats:1.1.7 "docker-entrypoint.s…" nats 7 minutes ago Up 7 minutes (healthy) 0.0.0.0:4222->4222/tcp, [::]:4222->4222/tcp, 0.0.0.0:6222->6222/tcp, [::]:6222->6222/tcp, 0.0.0.0:7777->7777/tcp, [::]:7777->7777/tcp, 0.0.0.0:8222->8222/tcp, [::]:8222->8222/tcp naice-ovis hub.eltex-co.ru/naice/naice-ovis:1.1 "java -cp @/app/jib-…" naice-ovis 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:5701->5701/tcp, [::]:5701->5701/tcp, 0.0.0.0:8084->8084/tcp, [::]:8084->8084/tcp naice-postgres naice-build-hosted.registry.eltex.loc/naice/postgres:1.1.7 "docker-entrypoint.s…" postgres 18 hours ago Up 18 hours (healthy) 5432/tcp naice-phoca hub.eltex-co.ru/naice/naice-phoca:1.1 "java -cp @/app/jib-…" naice-phoca 7 minutes ago Up 6 minutes (healthy) 0.0.0.0:8097->8097/tcp, [::]:8097->8097/tcp naice-radius hub.eltex-co.ru/naice/naice-radius:1.1 "/docker-entrypoint.…" naice-radius 7 minutes ago Up 7 minutes (healthy) 0.0.0.0:1812-1813->1812-1813/udp, [::]:1812-1813->1812-1813/udp, 0.0.0.0:9812->9812/tcp, [::]:9812->9812/tcp naice-sterna hub.eltex-co.ru/naice/naice-sterna:1.1 "/docker-entrypoint.…" naice-sterna 7 minutes ago Up 4 minutes (healthy) 80/tcp, 0.0.0.0:8443->444/tcp, [::]:8443->444/tcp naice-ursus hub.eltex-co.ru/naice/naice-ursus:1.1 "java -cp @/app/jib-…" naice-ursus 7 minutes ago Up 6 minutes (healthy) 0.0.0.0:8081->8081/tcp, [::]:8081->8081/tcp naice-vulpus hub.eltex-co.ru/naice/naice-vulpus:1.1 "java -cp @/app/jib-…" naice-vulpus 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:5702->5702/tcp, [::]:5702->5702/tcp, 0.0.0.0:8086->8086/tcp, [::]:8086->8086/tcp, 0.0.0.0:8088->8088/tcp, [::]:8088->8088/tcp naice-web hub.eltex-co.ru/naice/naice-web:1.1 "/docker-entrypoint.…" naice-web 7 minutes ago Up 3 minutes (healthy) 80/tcp, 0.0.0.0:443->443/tcp, [::]:443->443/tcp, 0.0.0.0:80->4200/tcp, [::]:80->4200/tcp
Установка с резервированием
Убедиться на каждой ноде, что все сервисы запущены:
sudo docker compose ps -a NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS epg-service hub.eltex-co.ru/naice/epg-service:1.1-3 "/bin/sh -e /usr/loc…" epg-service 7 minutes ago Up 7 minutes (healthy) 0.0.0.0:8100->8100/tcp, [::]:8100->8100/tcp naice-aquila hub.eltex-co.ru/naice/naice-aquila:1.1 "java -cp @/app/jib-…" naice-aquila 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:5703->5703/tcp, [::]:5703->5703/tcp, 0.0.0.0:8091-8092->8091-8092/tcp, [::]:8091-8092->8091-8092/tcp, 0.0.0.0:49->1049/tcp, [::]:49->1049/tcp naice-bubo hub.eltex-co.ru/naice/naice-bubo:1.1 "java -cp @/app/jib-…" naice-bubo 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:5704->5704/tcp, [::]:5704->5704/tcp, 0.0.0.0:8093->8093/tcp, [::]:8093->8093/tcp naice-castor hub.eltex-co.ru/naice/naice-castor:1.1 "java -Djava.awt.hea…" naice-castor 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:5705->5705/tcp, [::]:5705->5705/tcp, 0.0.0.0:8095->8095/tcp, [::]:8095->8095/tcp naice-cetus hub.eltex-co.ru/naice/naice-cetus:1.1 "java -cp @/app/jib-…" naice-cetus 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:8099->8099/tcp, [::]:8099->8099/tcp naice-gavia hub.eltex-co.ru/naice/naice-gavia:1.1 "java -cp @/app/jib-…" naice-gavia 7 minutes ago Up 4 minutes (healthy) 0.0.0.0:8080->8080/tcp, [::]:8080->8080/tcp naice-gulo hub.eltex-co.ru/naice/naice-gulo:1.1 "java -cp @/app/jib-…" naice-gulo 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:8089->8089/tcp, [::]:8089->8089/tcp naice-lemmus hub.eltex-co.ru/naice/naice-lemmus:1.1 "java -cp @/app/jib-…" naice-lemmus 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:8083->8083/tcp, [::]:8083->8083/tcp naice-lepus hub.eltex-co.ru/naice/naice-lepus:1.1 "java -cp @/app/jib-…" naice-lepus 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:8087->8087/tcp, [::]:8087->8087/tcp, 0.0.0.0:67->1024/udp, [::]:67->1024/udp naice-mustela hub.eltex-co.ru/naice/naice-mustela:1.1 "java -cp @/app/jib-…" naice-mustela 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:8070->8070/tcp, [::]:8070->8070/tcp naice-nats hub.eltex-co.ru/naice/nats:1.1.7 "docker-entrypoint.s…" nats 7 minutes ago Up 7 minutes (healthy) 0.0.0.0:4222->4222/tcp, [::]:4222->4222/tcp, 0.0.0.0:6222->6222/tcp, [::]:6222->6222/tcp, 0.0.0.0:7777->7777/tcp, [::]:7777->7777/tcp, 0.0.0.0:8222->8222/tcp, [::]:8222->8222/tcp naice-ovis hub.eltex-co.ru/naice/naice-ovis:1.1 "java -cp @/app/jib-…" naice-ovis 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:5701->5701/tcp, [::]:5701->5701/tcp, 0.0.0.0:8084->8084/tcp, [::]:8084->8084/tcp naice-phoca hub.eltex-co.ru/naice/naice-phoca:1.1 "java -cp @/app/jib-…" naice-phoca 7 minutes ago Up 6 minutes (healthy) 0.0.0.0:8097->8097/tcp, [::]:8097->8097/tcp naice-radius hub.eltex-co.ru/naice/naice-radius:1.1 "/docker-entrypoint.…" naice-radius 7 minutes ago Up 7 minutes (healthy) 0.0.0.0:1812-1813->1812-1813/udp, [::]:1812-1813->1812-1813/udp, 0.0.0.0:9812->9812/tcp, [::]:9812->9812/tcp naice-sterna hub.eltex-co.ru/naice/naice-sterna:1.1 "/docker-entrypoint.…" naice-sterna 7 minutes ago Up 4 minutes (healthy) 80/tcp, 0.0.0.0:8443->444/tcp, [::]:8443->444/tcp naice-ursus hub.eltex-co.ru/naice/naice-ursus:1.1 "java -cp @/app/jib-…" naice-ursus 7 minutes ago Up 6 minutes (healthy) 0.0.0.0:8081->8081/tcp, [::]:8081->8081/tcp naice-vulpus hub.eltex-co.ru/naice/naice-vulpus:1.1 "java -cp @/app/jib-…" naice-vulpus 7 minutes ago Up 5 minutes (healthy) 0.0.0.0:5702->5702/tcp, [::]:5702->5702/tcp, 0.0.0.0:8086->8086/tcp, [::]:8086->8086/tcp, 0.0.0.0:8088->8088/tcp, [::]:8088->8088/tcp naice-web hub.eltex-co.ru/naice/naice-web:1.1 "/docker-entrypoint.…" naice-web 7 minutes ago Up 3 minutes (healthy) 80/tcp, 0.0.0.0:443->443/tcp, [::]:443->443/tcp, 0.0.0.0:80->4200/tcp, [::]:80->4200/tcp
Общие действия
Зайти в веб-интерфейс NAICE, убедиться, что отображается корректная версия ПО: API: 1.1-17177, WEB: 1.1-19529