Почему не работает связь от GKE к приватному ip в GCP? - PullRequest
0 голосов
/ 16 июня 2020

У меня есть то, что я считаю достаточно простой настройкой в ​​Google Cloud - кластер GKE, экземпляр Cloud SQL и экземпляр виртуальной машины Kafka «Click-To-Deploy».

Все ресурсы находятся в одном VP C, с правилами брандмауэра, разрешающими весь трафик c на внутренние блоки VP C CIDR.

Модули в кластере GKE не имеют проблем с доступом к облаку SQL экземпляр через свой частный IP-адрес. Но они не могут получить доступ к экземпляру Kafka через его частный IP-адрес:

# kafkacat -L -b 10.1.100.2
% ERROR: Failed to acquire metadata: Local: Broker transport failure

Я запустил другую виртуальную машину вручную в VP C, и у нее нет проблем с подключением к экземпляру Kafka. :

# kafkacat -L -b 10.1.100.2
Metadata for all topics (from broker -1: 10.1.100.2:9092/bootstrap):
 1 brokers:
  broker 0 at ....us-east1-b.c.....internal:9092
 1 topics:
  topic "notifications" with 1 partitions:
    partition 0, leader 0, replicas: 0, isrs: 0

Кажется, я не вижу реальной разницы в сетевом взаимодействии между контейнерами в GKE и виртуальной машиной, запускаемой вручную, тем более, что оба могут получить доступ к экземпляру Cloud SQL на 10.10.0.3.

Где мне go искать, что блокирует соединение?

Ответы [ 2 ]

1 голос
/ 16 июня 2020

Я видел, что ошибка связана с сетью , однако, если вы используете gke в той же сети VP C, вы убедитесь, что правильно настроили Internal Load Balancer , также я видел, что этот продукт или функция является бета-версией, это означает, что еще нет гарантии, что он будет работать должным образом, еще одно предложение - убедиться, что вы не используете какую-либо политику , который может блокировать соединение, я нашел следующую статью в сообществе, которая, возможно, поможет вам решить эту проблему

0 голосов
/ 16 июня 2020

Это дало мне то, что мне было нужно: https://serverfault.com/a/924317

Сетевые правила в GCP все еще кажутся мне неудобными из-за долгой работы с AWS. У меня были правила, которые позволяли чему-либо в блоках VP C CIDR связываться с чем-либо еще в тех же блоках CIDR, но этого было недостаточно. Явное добавление рабочих узлов su bnet в качестве источника для нового правила открыло его.

...