Выставить определенный порт, который будет доступен по моему исходящему IP-адресу на kubernetes - PullRequest
0 голосов
/ 16 мая 2018

Я пытаюсь запустить p2p-клиент (IOTA), для которого требуется, чтобы узел, к которому я подключаюсь, имел возможность подключиться обратно, чтобы иметь тот же IP-адрес, с которого я сделал запрос, и к очень конкретному порту.

NodePort не будет работать, потому что он выставляется как порт, отличный от того, что я хочу.LoadBalancer не будет работать, потому что другой узел не будет знать мой IP-адрес балансировщика нагрузки.

Как люди могут использовать p2p-клиенты, такие как биткойн или йота на kubernetes?

1 Ответ

0 голосов
/ 22 мая 2018

Поскольку каждый модуль имеет динамический IP-адрес и, как правило, динамическое имя (например, если вы используете Deployment), у вас нет возможности каким-либо образом сделать его конечную точку статической, но у вас есть альтернативаway - StatefulSet с Headless Service .

Вы можете развернуть несколько реплик вашего приложения, используя StatefulSet, и создать для него Headless Service.Каждая реплика в StatefulSet будет доступна с использованием ее уникального имени.

Вот цитата из документации:

Каждый Pod в StatefulSet получает свое имя хоста изимя StatefulSet и порядковый номер Стручка.Шаблон для созданного имени хоста $(statefulset name)-$(ordinal).В приведенном выше примере будут созданы три модуля с именами web-0, web-1, web-2.StatefulSet может использовать Headless Service для управления доменом своего Pods.Домен, управляемый этим Service, имеет вид: $(service name).$(namespace).svc.cluster.local, где «cluster.local» - это кластерный домен.При создании каждого Pod он получает соответствующий поддомен DNS в форме: $(podname).$(governing service domain), где управляющая служба определяется полем serviceName в StatefulSet.

.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...