Настройка Cloud NAT только для одного пула узлов в кластере GKE - PullRequest
0 голосов
/ 11 апреля 2020

У меня есть частный кластер gke с несколькими пулами узлов, и, читая документацию , кажется, что если я создаю Cloud NAT, то это возможно только для всего кластера. Есть ли способ настроить только подмножество кластера, чтобы иметь доступ для отправки трафика c через NAT? Я осмотрелся, и, кажется, невозможно назначить сеть, диапазон IP-адресов или подсеть для пула узлов, поэтому я не уверен, возможно ли это.

Ответы [ 2 ]

0 голосов
/ 15 апреля 2020

Сначала мы должны описать, что вам нужно настроить.

Компоненты:

1.) Экземпляр шлюза NAT

2.) Сетевые теги и VP C Маршруты

3.) Пулы узлов с сетевыми тегами.

Для 1 и 2 вам потребуется настроить другой экземпляр виртуальной машины GCE в качестве шлюза NAT аналогично тому, как показано в наш GCE NAT учебник . Это должно привести к созданию экземпляра NAT и маршрута VP C, который направляет сетевой трафик c от ресурсов с тегами к NAT.

Обязательно используйте теги, указанные c для узла- пулы, которые будут использовать экземпляр в качестве NAT.

для 3. Чтобы указать пулы узлов на экземпляр NAT, необходимо использовать правильные сетевые теги на узлах, чтобы трафик c из этих узлы правильно маршрутизируются.

Узел / Узел с тегами -> VP C Маршрут -> Экземпляр NAT -> Inte rnet

Чтобы применить это ко всему пулу узлов, вам нужно применить теги на уровне пула узлов, чтобы он каскадно касался нижележащих узлов, вы можете увидеть, как это сделать здесь . К сожалению, это невозможно для существующих пулов узлов, поэтому вам придется удалить и воссоздать существующие пулы узлов с соответствующими тегами, такими как показано ниже:

пулы узлов контейнера gcloud create Proxy --cluster = prod-cluster --tags = NatRouteA

0 голосов
/ 12 апреля 2020

Вы можете проверить старое решение nat gw от Google, например, на основе экземпляра виртуальной машины вместо Cloud NAT. Возможный способ сделать то, что вам нужно, это:

  1. Создать выделенный пул узлов GKE с тегом
  2. Создать экземпляр виртуальной машины NAT, используя приведенные выше примеры terraform или вручную
  3. Создать маршрут по умолчанию, используя созданный экземпляр NAT VM в качестве места назначения, и применить этот маршрут к экземплярам с тегом, который вы использовали для создания пула узлов GKE

Ссылочное решение nat gw использует аналогичную технику, но оно применяется Маршрут ко всем пулам узлов, используя весь тег кластера вместо отдельного тега пула узлов.

...