Использование hostNetwork: true
позволяет всему вашему модулю (все контейнеры в нем) связывать порты с хостом, который вы уже определили как проблемный.
Прежде всего, вы должны рассмотреть возможность перемещения контейнера mysql извашего стручка.Предполагается, что использование нескольких контейнеров позволяет группировать контейнеры, работающие как одно целое (например, приложение и фоновый процесс, тесно взаимодействующие друг с другом).
Продумайте сервисы.Ваша служба PowerDNS сама является пользователем службы, так как для нее требуется база данных, а приложение PowerDNS не предоставляет ее.Вы хотите другой сервис для MySQL.Взгляните на документацию ( one , two ) для StatefulSets, так как он использует MySQL в качестве примера (запуск баз данных в Kubernetes - одна из более сложных задач).Создайте для этого ClusterIP
сервис.ClusterIP
службы доступны только внутри кластера (ваша база данных является внутренней службой, так что вы этого хотите).
Таким образом, ваш модуль PowerDNS будет содержать только один контейнер, который вы можете привязать к своему хосту.сеть. Но с использованием hostNetwork: true
в целом не годится.Вы не сможете создать несколько экземпляров своего приложения (в случае масштабирования PowerDNS), хотя для первых шагов это хорошо.Балансировщик нагрузки перед вашей настройкой будет лучше, хотя.Вы можете использовать службы NodePort
, чтобы сделать вашу службу доступной для порта с высокими значениями, к которому ваш балансировщик нагрузки подключается через прокси.