Контроллер входящего трафика Kubernetes предоставляет указанный порт c - PullRequest
1 голос
/ 27 мая 2020

В моем учреждении есть настройки брандмауэра, которые блокируют большинство внешних портов, в настоящее время у меня есть внутренняя виртуальная машина Linux, например, http://abc.xyz: 5555 (эта ссылка доступен только во внутренней сети), а администратор настраивает Netscaler таким образом, чтобы внутренняя ссылка перенаправлялась на общедоступную: https://def.edu.

Теперь у меня есть несколько веб-серверов, использующих такие порты, как 5556,5557,5558. Я хочу настроить входящий трафик Kubernetes, чтобы весь трафик c сначала поступал на входной контроллер, а входящий трафик c перенаправлялся на мои несколько веб-служб. Обычно, как показано на рисунке ниже. Objective

У меня доступен только порт 5555, но все руководства Ingress, похоже, поддерживают только порт HTTP 80 и HTTPS 443. У меня вопрос: могу ли я настроить хост контроллера Ingress как http://abc.xyz: 5555 ? Или мне следует go для других подходов, например: An Ingress does not expose arbitrary ports or protocols. Exposing services other than HTTP and HTTPS to the internet typically uses a service of type Service.Type=NodePort or Service.Type=LoadBalancer., если да, то какие термины / методы мне следует использовать?

1 Ответ

2 голосов
/ 27 мая 2020

Я предлагаю использовать вход, поскольку каждому балансировщику нагрузки назначается собственный внешний IP. Вы можете указать собственный порт и протоколы (tcp, udp, http). Я работал с nginx, но документация показалась устаревшей (последняя проверена на прошлой неделе). Итак, в настоящее время мы используем Traefik . Веб-панель также очень помогла в его отладке.

Как мы это решили:

  1. Установите traefik через helm с пользовательскими значениями, чтобы он слушал другие порты, кроме 80 и 443; Добавьте пользовательские точки входа в свой values.yaml и установите traefik с помощью: helm install --values values.yaml stable/traefik

  2. Установите свои входящие маршруты http / tcp / udp

  3. Перенаправьте вашу веб-панель и go на http://localhost: 9000 / панель

Пожалуйста, ознакомьтесь с официальной документацией для более подробной информации: https://docs.traefik.io/getting-started/install-traefik/#use диаграмма руля

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