# #kubernetes #google-cloud-platform #google-kubernetes-engine #gke-networking
Вопрос:
У меня есть GKE с общедоступными узлами(узлы имеют свой внешний IP-адрес), я хочу подключиться к базе данных MySQL, которая работает внутри виртуальной машины в другом проекте. Я попытался подключиться к балансировщику нагрузки, но время его работы истекло. Я попытался связаться с cloud NAT, но все еще не могу установить соединение.
Тем не менее, я могу подключиться, если внесу в белый список точный внешний IP-адрес узла, на котором запущен модуль (с которого я хочу подключиться к базе данных). Но я не могу добавить все внешние IP-адреса узлов в брандмауэр, так как у него много узлов.
Как создать единый внешний IP-адрес, который я могу использовать для включения в белый список, чтобы я мог подключиться к виртуальной машине из общедоступного кластера GKE?
Ответ №1:
Вы должны установить шлюз NAT перед всеми виртуальными машинами или узлами, на которых работает кластер GKE.
Таким образом, весь исходящий трафик поступает из одной выходной точки.
Вы можете проверить : https://registry.terraform.io/modules/GoogleCloudPlatform/nat-gateway/google/latest/examples/gke-nat-gateway
вы можете напрямую применить его, и ваш GKE будет работать за NAT, и весь трафик из модуля будет выходить из одной точки.
чтобы проверить, работает выход или нет
вы можете exec
войти в модуль и отправить curl ifconfig.me
запрос, в ответ вы получите свой внешний IP-адрес.
Попробуйте из модулей, запланированных на разных узлах.
Как только все будет установлено, вы можете внести IP-адрес NAT в белый список в базе данных.