Общее описание
Для смены Docker-сетей на уже установленном NAICE предназначен плейбук replace-docker-networks.yml. Если требуется сменить подсети Docker и повторно переустановить NAICE воспользуйтесь разделом Повторная установка NAICE со сменой Docker-сетей. Принцип работы плейбука replace-docker-networks.yml заключается в копировании обновленных docker-compose файлов на указанные хосты и последующем перезапуске контейнеров NAICE.
Смена сетей требует остановки контейнеров, поэтому во время выполнения плейбука replace-docker-networks.yml сервисы NAICE будут временно недоступны.
Если в составе NAICE используется Peeper-Client (подробнее v1.2_7.3 Мониторинг NAICE с использованием Eltex Peeper) перед выполнением смены подсетей Docker необходимо вручную остановить Peeper-Client. Для этого необходимо зайти в папку установки клиента <папка установки NAICE>/peeper (по умолчанию /etc/docker-naice/peeper) и остановить его командой:
sudo ./setup.sh -u
Смена Docker-сетей
Изменить значения в файле group_vars/networks.yml на новые параметры сети.
Пример содержимого файла group_vars/networks.yml со значениями по умолчанию:
--- # Переменные для настройки Docker сети docker_network_unmasked: subnet: "172.18.0.0/20" ip_range: "172.18.8.0/21" gateway: "172.18.0.1" docker_network_external: subnet: "172.20.0.0/20" ip_range: "172.20.8.0/21" gateway: "172.20.0.1" docker_network_internal: subnet: "172.21.0.0/20" ip_range: "172.21.8.0/21" gateway: "172.21.0.1"
Перед сменой сетей убедиться, что новые подсети не пересекаются с существующими в инфраструктуре.
Если в составе NAICE ранее был установлен Peeper-Client (подробнее v1.2_7.3 Мониторинг NAICE с использованием Eltex Peeper), то перед выполнением смены подсетей Docker необходимо вручную остановить Peeper-Client. Для этого необходимо зайти в папку установки клиента <папка установки NAICE>/peeper (по умолчанию /etc/docker-naice/peeper) и остановить его командой:
cd /etc/docker-naice/peeper sudo bash ./setup.sh -u
Запустить плейбук replace-docker-networks.yml для смены Docker-сетей:
ansible-playbook replace-docker-networks.yml -i inventory/<ваш-файл-hosts>.yml
Предустановленные inventory-файлы:
hosts.yml- для standalone установкиhosts-cluster.yml- для кластерной установки с VRRPhosts-geo.yml- для кластерной установки без VRRP
Перед запуском плейбука не забудьте указать корректные адреса хостов в нужном файле.
После выполнения плейбука выполнить проверку на хостах, где установлен NAICE:
docker network inspect external docker network inspect internal docker network inspect naice-network-unmasked
Повторная установка NAICE со сменой Docker-сетей
Для однохостовой установки
Остановить контейнеры с помощью следующей команды:
cd /etc/docker-naice sudo docker compose down
Удалить Docker-сети с помощью команды:
sudo docker network prune
Подтвердить удаление:
WARNING! This will remove all custom networks not used by at least one container. Are you sure you want to continue? [y/N] y
Проверить, что сети external, internal и naice-network-unmasked отсутствуют в выводе команды:
docker network ls
Затем выполнить установку в соответствии с инструкцией v1.2_3.4 Установка плейбуками Ansible (одиночная "Stand-Alone")
Для установки с резервированием
Остановить контейнеры на нодах с сервисами NAICE:
cd /etc/docker-naice docker compose -f docker-compose.yml down
Остановить контейнеры на нодах с PostgreSQL с помощью команды:
cd /etc/docker-naice docker compose -f docker-compose.repmgr.yml down
Удалить Docker-сети на всех нодах с помощью команды:
docker network prune
Подтвердить удаление:
WARNING! This will remove all custom networks not used by at least one container. Are you sure you want to continue? [y/N] y
Проверить, что сети external, internal и naice-network-unmasked отсутствуют в выводе команды:
docker network ls
Затем выполнить установку в соответствии с инструкцией v1.2_ru_3.5 Установка с резервированием (c использованием VRRP) или v1.2_ru_3.6 Установка с резервированием (без использования VRRP)