После установки Printum пропало подключение к серверу
Симптомы
- После установки системы или первого запуска контейнеров пропадает связь с сервером: недоступен SSH, недоступен веб-интерфейс.
- При запуске контейнеров в логе — ошибка:
ERROR: could not find an available, non-overlapping IPv4 address pool among the defaults to assign to the network
Чаще всего
Диапазон адресов внутренней сети Docker (10.28.32.0/26, используется по умолчанию) пересекается с адресным пространством инфраструктуры заказчика. Проявляется во время установки, сразу после неё или при первом запуске контейнеров — причина во всех случаях одна и та же.
Диагностика
Если SSH недоступен — подключитесь к серверу через консоль гипервизора (vSphere / Proxmox / Hyper-V и т.д.), без этого дальнейшие шаги не выполнить.
Проверьте адреса, назначенные контейнерам:
sudo docker ps -q | sudo xargs -n 1 docker inspect -f '{{ .Name }}: {{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}'
Если адрес контейнера пересекается с локальной сетью сервера — причина подтверждена.
Решение
-
Остановите контейнеры Printum (если проблема обнаружена после первого запуска; если конфликт известен заранее — пропустите этот шаг и шаг 5):
Мониторинг:
cd /opt/printum docker-compose downПринтМенеджер:
cd /opt/printmanager docker-compose down -
Проверьте наличие файла
/etc/docker/daemon.json. Если файла нет — создайте:sudo nano /etc/docker/daemon.json -
Укажите новый пул IP-адресов Docker, не пересекающийся с локальной сетью (диапазон согласуйте с сетевым администратором):
{ "default-address-pools": [ { "base": "x.x.x.x/x", "size": 26 } ] }size: 26менять не требуется. -
Перезапустите Docker:
sudo systemctl restart docker -
Запустите контейнеры Printum (те же команды, что в шаге 1, но
up -dвместоdown).
Если при запуске контейнеров снова появляется ошибка could not find an available, non-overlapping IPv4 address pool — выбранный диапазон тоже пересекается с существующими сетями. Вернитесь к шагу 3 и укажите другой диапазон.
Проверка результата
Выполните команду из раздела «Диагностика» ещё раз: адреса контейнеров должны принадлежать новому пулу (не старому 10.28.32.0/26). SSH-соединение с сервером устанавливается; веб-интерфейс Мониторинга/ПМ открывается в браузере.
Если проблема сохраняется
Соберите перед обращением в поддержку:
- логи: вывод
bash /opt/printum/logs.sh(Мониторинг) илиbash /opt/printmanager/logs.sh(ПринтМенеджер); - версию и ОС:
cat /opt/printum/.versionилиcat /opt/printmanager/.version; - описание сценария: когда и на каком шаге пропала связь;
- результаты диагностики: адреса контейнеров из команды
docker inspect(раздел «Диагностика»).