Измените порт узла на 80 в baremetal

#kubernetes

#kubernetes

Вопрос:

Если я использую порт узла в yml файле, он выдает порт больше 30000, но когда мой пользователь хочет его использовать, он не хочет запоминать этот порт и хочет использовать 80. мой kubernetes кластер включен baremetal . Как я могу это решить?

Ответ №1:

Kubernetes не позволяет вам предоставлять доступ к портам низкого уровня через тип службы портов узла по дизайну. Идея заключается в том, что существует значительная вероятность конфликта портов, если пользователям разрешено устанавливать низкие номера портов для своих служб портов узла.

Если вы действительно хотите использовать порт 80, вам придется либо использовать тип службы балансировки нагрузки, либо перенаправлять свой трафик через вход. Если бы вы были в облачной службе, то любой вариант был бы довольно простым. Однако, поскольку вы работаете на голом металле, оба варианта будут очень сложными. Вам придется самостоятельно настраивать балансировку нагрузки или функциональность входа, чтобы использовать любой вариант, и это будет грубо, извините.

Если вы хотите продолжить работу с этим, вам придется прочитать кучу документации, чтобы выяснить, что вы хотите реализовать и как это реализовать.

https://www.weave.works/blog/kubernetes-faq-how-can-i-route-traffic-for-kubernetes-on-bare-metal

Комментарии:

1. Если вы хотите продвигаться вперед с этим, вам придется прочитать кучу документации, чтобы понять, что вы хотите реализовать и как это реализовать я знаю, можете ли вы привести меня к хорошему документу

2. или объясните это, я не имею ни малейшего представления о baremetal

3. Честно говоря, если вы не в состоянии найти документацию для этого самостоятельно, вы зашли слишком далеко и должны отступить, а не пытаться углубиться.

4. могу ли я использовать ingress и loadbalancer одновременно?

5. я прочитал много документов . я знаю, что могу использовать MetalLB, но в конце концов я запутался в этом

Ответ №2:

Согласно api-server документам, вы можете использовать --service-node-port-range параметр для api-server или указать его в kubeadm конфигурации при начальной загрузке вашего кластера см. Проблему с github

Комментарии:

1. Вы очень близки к сути. Напрямую ответить на данный вопрос сложно, но развертывание контроллера входа также может помочь — он открывает порты 80 и 443 по умолчанию, и с помощью правила входа вы можете добиться желаемого поведения.