Kubernetes (на GKE) внешнее соединение через NAT для определенных модулей - PullRequest
0 голосов
/ 07 ноября 2018

У меня есть кластер Kubernetes на GKE, который настроен для использования экземпляра CE в качестве внешнего NAT. Тем не менее, я хочу только направить определенные модули в кластере GKE через внешний NAT. Возможно ли это, и как мне настроить это?

1 Ответ

0 голосов
/ 07 ноября 2018

На самом деле нет простого способа сделать это, но это возможно. 1) Вы должны убедиться, что используете VPC-Native 2) Убедитесь, что все ваши модули, которые будут NAT, находятся на одном и том же узле, воспользовавшись расширенным планированием в k8s 3) Найдите CIDR pod этого узла, используя 'kubeclt description no [имя_узла] | grep PodCIDR ' 4) Создайте собственный маршрут, который отправляет весь трафик из этого CIDR через NAT

Это не доказано, чтобы работать, если честно. Из некоторых проблем Cloud NAT я знаю, что даже при использовании VPC Native pod IP-адрес pod все еще иногда проходит через SNAT на узле и, таким образом, получает IP-адрес узла. Вы можете использовать внутренний IP-адрес узла вместо CIDR pod на узле, это может вызвать проблемы со связью с Мастером, но не обязательно.

Наконец, имейте в виду, что это не идеально, поскольку узел может в конечном итоге воссоздаться, а IP или CIDR модуля могут измениться.

...