1 votes

IP statique sortante sur GKE

J'exécute dans un cluster GKE (1.15.12-gke.2) des applications qui doivent se connecter à une API tierce. Cette API tierce est soumise à un filtrage IP obligatoire. Ainsi, pour obtenir l'autorisation de l'API, je dois déclarer quelles sont les IP publiques que j'utiliserai pour me connecter à l'API. Le problème est que les adresses IP publiques des nœuds GKE ne sont pas stables au fil des mises à jour, ce qui empêcherait l'utilisation de la mise à l'échelle automatique des nœuds ; à chaque redémarrage des nœuds, l'adresse IP change.

Existe-t-il un moyen de disposer d'une IP publique sortante stable sur GKE ?

Merci -Ashok Patidar

3voto

Dawid Kruk Points 528

Comme je l'ai dit dans mon commentaire, la solution pour avoir une IP sortante statique en GKE est d'utiliser Cloud NAT .

Avis de non-responsabilité !

A Cloud NAT peut effectuer la NAT pour les nœuds et les Pods dans une passerelle privé cluster, qui est un type de cluster natif VPC.

Cloud.google.com : NAT : Docs : Aperçu : NAT avec GKE

Vous pouvez en savoir plus sur le secteur privé GKE clusters en suivant la documentation officielle :

Il existe également un guide officiel montrant le processus de création d'un site privé GKE et ensuite le connecter avec Cloud NAT :

En suivant le guide ci-dessus, vous pouvez choisir d'utiliser l'adresse IP statique précédemment réservée ou d'en créer une nouvelle. Ce sera l'IP qui GKE que les noeuds et les pods utiliseront lorsqu'ils communiqueront avec des noeuds "extérieurs". .


J'ai fait un test où j'ai créé un groupe privé GKE cluster avec 3 noeuds. J'ai créé des pods dont chacun était programmé sur un nœud différent. Chaque pod envoie un paquet à un serveur distant. L'écoute du serveur distant a montré que chaque pod ayant envoyé un message avait la même IP source :

tcpdump: listening on ens4, link-type EN10MB (Ethernet), capture size 262144 bytes
14:06:11.692832 IP (tos 0x0, ttl 54, id 46751, offset 0, flags [DF], proto TCP (6), length 60)
    35.198.XXX.XXX.1027 > 10.168.0.2.9833: # NODE1 (POD1) TO SERVER
    10.168.0.2.9833 > 35.198.154.155.1027: # REPLY TO (POD1)
    35.198.XXX.XXX.2051 > 10.168.0.2.9833: # NODE2 (POD2) TO SERVER
    10.168.0.2.9833 > 35.198.154.155.2051: # REPLY TO (POD2)
    35.198.XXX.XXX.1538 > 10.168.0.2.9833: # NODE3 (POD3) TO SERVER
    10.168.0.2.9833 > 35.198.154.155.1538: # REPLY TO (POD3)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X