возможно ли развернуть входной контроллер (nginx) без публичного IP-адреса?
Без сомнения, да, если Service
контроллера Ingress имеет значение type: NodePort
, тогда частный IP-адрес контроллера Ingress равен каждому Node
IP-адресу, на порт (ы) указывает до :80
и :443
из Service
. По секрету, это именно то, что происходит в любом случае с type: LoadBalancer
, только с дополнительным сахарным покрытием облачного провайдера, отображающего между IP-адресом балансировщика нагрузки и привязкой к портам Node
.
Итак, чтобы закрыть этот цикл: если вы хотите иметь 100% внутренний контроллер Ingress, используйте hostNetwork: true
и привяжите ports:
контроллера Ingress к порту host 80. и 443; затем создайте DNS (запись | запись CNAME) для каждого виртуального хоста, который разрешается по адресу каждого Node
в кластере, и poof: 100% не входящий в Интернет контроллер входа.