Un pod fait partie d'un cluster (groupe de noeuds), et le réseau de cluster vous indique que :
En réalité, Kubernetes applique des adresses IP au niveau du Pod - les conteneurs au sein d'un Pod partagent leurs espaces de noms réseau - y compris leur adresse IP.
Cela signifie que les conteneurs à l'intérieur d'un Pod peuvent tous se joindre aux ports des autres sur localhost.
Cela implique que les conteneurs à l'intérieur d'un Pod doivent coordonner l'utilisation des ports, mais ce n'est pas différent des processus dans une VM.
Cela s'appelle le modèle “IP-par-pod”.
Les contraintes sont :
- tous les conteneurs peuvent communiquer entre eux sans NAT
- tous les noeuds peuvent communiquer avec tous les conteneurs (et vice-versa) sans NAT
- l'IP qu'un conteneur voit de lui-même est la même IP que les autres voient de lui
En savoir plus avec "Networking avec Kubernetes" de Alok Kumar Singh:
Ici :
Nous avons une machine, elle s'appelle un node dans Kubernetes.
Elle a une IP 172.31.102.105 appartenant à un sous-réseau ayant la CIDR 172.31.102.0/24.
(CIDR : Routage Inter-Domaines sans classe, une méthode pour allouer des adresses IP et des routes IP)
Le noeud dispose d'une interface réseau eth0
attachée. Elle appartient à l'espace de noms réseau root du noeud.
Pour que les pods soient isolés, ils ont été créés dans leurs propres espaces de noms réseau - ce sont les espaces de noms réseau pod1 et pod2.
Les pods se voient attribuer les adresses IP 100.96.243.7 et 100.96.243.8 dans la plage CIDR 100.96.0.0/11.
Pour cela, voir "Réseautage avec Kubernetes" de CloudNativelabs:
Kubernetes n'orchestre pas la mise en place du réseau et délègue le travail aux plug-ins CNI (Interface de Réseau de Conteneur). Veuillez vous référer à la spécification CNI pour plus de détails sur la spécification CNI.
Voici les options d'implémentation de réseau possibles via les plug-ins CNI qui permettent la communication pod-à-pod en respectant les exigences de Kubernetes :
- une solution de couche 2 (commutation)
- une solution de couche 3 (routage)
- des solutions de superposition (overlay)
couche 2 (commutation)
Vous pouvez voir leur IP attribuée en tant que partie de la plage d'adresses du sous-réseau du conteneur.
couche 3 (routage)
Cela consiste à peupler le routeur de passerelle par défaut avec des routes pour le sous-réseau tel qu'indiqué dans le diagramme.
Les routes vers 10.1.1.0/24 et 10.1.2.0/24 sont configurées pour passer par node1 et node2 respectivement.
solutions de superposition
Généralement pas utilisées.
Remarque : Voir également (Oct. 2018) : "Réseau Google Kubernetes Engine".