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

Теперь, когда я проверил консоль балансировщика нагрузки Google, я увидел, что создан новый балансировщик нагрузки, и все работает нормально. Но странно то, что я обнаружил, что два моих узла неисправны, и только один узел принимает соединение. Затем я нашел это обсуждение и понял, что единственный узел, на котором запущен модуль контроллера входящего трафика nginx, будет исправен для балансировщика нагрузки.

Теперь мне трудно понять этот поток данных и использование внешнего балансировщика нагрузки здесь. Мы используем внешний балансировщик нагрузки, чтобы сбалансировать нагрузку на несколько машин. Но с этой конфигурацией внешний балансировщик нагрузки всегда будет перенаправлять трафик на узел с модулем контроллера входящего трафика nginx. Если это верно, какова здесь роль внешнего баланса нагрузки?

0
Nirmal Raghavan 15 Апр 2020 в 09:01

1 ответ

Лучший ответ

Вы можете иметь более одной реплики модулей входящего контроллера Nginx, развернутых на нескольких узлах кубернетов, для обеспечения высокой доступности, чтобы уменьшить вероятность простоя в случае, если один узел кубернетов недоступен. LoadBalancer отправит запрос одному из модулей входящего контроллера nginx. Из модулей контроллера входящего трафика nginx он будет перенаправлен на любой из модулей внутреннего интерфейса. Роль внешнего балансировщика нагрузки заключается в том, чтобы предоставлять модули контроллера входящего трафика nginx за пределами кластера. Поскольку NodePort не рекомендуется для использования в производственной среде, а ClusterIP нельзя использовать для предоставления подов за пределами кластера, поэтому LoadBalancer является жизнеспособным вариантом.

1
Arghya Sadhu 15 Апр 2020 в 06:55