2016-01-01 4 views
0

Я пытаюсь настроить Kubernetes на GCE. Мой вопрос: допустим, в Kubernetes есть 20 миньонов, а две службы развернуты с типом LoadBalancer с репликами по 2 каждый. Таким образом, K8S будет в основном размещать 2 контейнера на двух разных миньонах за услугу. Мой вопрос в том, будут ли остальные миньоны, которые не запускают какие-либо стручки, также получают правило iptables в цепочке KUBE-PORTALS-CONTAINER и KUBE-PORTALS-HOST для этих двух сервисов? По крайней мере, это мое наблюдение, но хотелось бы подтвердить, является ли это именно то, как Kubernetes работает на GCE, или это то, как K8S ведет себя независимо от того, где он развернут. Является ли причина того, что любая служба должна быть доступна любому миньону независимо от того, является ли миньон частью этой службы или нет? Дайте мне знать, есть ли лучшее сообщество для этого вопроса?Kubernetes on GCE

ответ

0

бы остальные приспешников, не работающих под управлением любых стручки также получить правила Iptables в цепи KUBE-ПОРТАЛЫ-контейнерном и KUBE-ПОРТАЛЫ-HOST для этих двух дополнительных услуг?

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

Я хотел бы подтвердить, является ли это именно то, как Kubernetes работает в GCE, или это то, как K8S ведет себя независимо от того, где он развернут.

Iptables правило услуг в кластер является одинаковым независимо от того, где развернут Kubernetes. Как правило, доступ к сервису извне зависит от того, где вы развертываете свой кластер (например, в AWS вы должны создать службу типа NodePort вместо типа LoadBalancer), поэтому правило iptables для внешних служб может немного отличаться.

+0

Спасибо, Роберт. Я немного смущен этим. Согласовано, если балансировщик нагрузки запрограммирован на пересылку трафика на любой из узлов кластера Kubernetes, то есть имеет смысл, что любой узел в кластере K8S должен иметь возможность пересылать трафик для любой службы, запущенной в кластере. Но в немного лучшем мире, если мой loadbalancer перенаправляет трафик на узлы, работающие по крайней мере на одном контейнере, это похоже на дополнительные перелеты. Я понимаю, что создание такого балансира нагрузки будет дублировать некоторые из того, что уже делает kube-proxy. Есть ли конфигурация для управления, если правило iptables входит в узел с запуском этого модуля? – Mayank

+0

Да, эта конфигурация иногда может привести к дополнительным перелетам. AFAIK нет никакого способа контролировать правила iptables, чтобы уменьшить дополнительные перелеты. –

Смежные вопросы