Le Pod, unité d’exécution.

Le Pod est l’un des fondamentaux de Kubernetes, car il est le composant principal que les développeurs vont manipuler.

Les Pods sont les plus petits artefact dans un cluster Kubernetes. C’est un ensemble cohérent et non sécable de conteneur. Ceci signifie que tous les conteneurs d’un Pod seront toujours sur une même machine.

Les processus s’exécutant dans un même Pod partagent la même adresse IP.

Par contre, les processus de Pods différents sont complètement isolées les uns des autres. Ils ont des adresses IP différentes, des noms d’hôtes différents,…

Que mettre dans un Pod ?

La question à se poser lors de la conception des Pods est la suivante : “Ces conteneurs fonctionneront-ils correctement s’ils sont déployés sur des serveurs différents ?” Si la réponse à cette question est “oui”. Alors ces conteneurs ne doivent pas être dans le même Pod.

Par exemple, lors du déploiement d’une architecture LAMP constituée d’un serveur web et d’un base de données MySQL, grouper le serveur web et la base de données dans un même Pod est une erreur. En effet ces deux composants : Peuvent fonctionner de manière complètement indépendante N’ont pas les mêmes cycles de vie. Il est donc impératif de les déployer dans deux Pods différents.

Quel différence entre un Pod et un conteneur ?

Kubernetes n’utilise pas directement les conteneurs, mais il les entoure d’une structure de niveau supérieur appelés Pod. Tous les conteneurs d’un même Pod partagent les mêmes ressources et le même réseau local. Un Pod est donc un ensemble de conteneurs isolés des autres partageant les mêmes ressources.

Que partage les conteneurs dans un Pod ?

Un Pod est-il un conteneur ?

Un Pod est composé de un ou plusieurs conteneurs. C’est une enveloppe et le plus petit artefact manipulable dans un cluster Kubernetes.

Cycle de vie d’un pod

L’examen du cycle de vie d’un pod Kubernetes peut aider à comprendre ce qui se passe. Tout au long de son cycle de vie, un Pod peut prendre les états suivants : Pending, Running, Succeeded et Failed.

Comment retirer tous les pods d’un noeud ?

Pour supprimer tous les pods d’une noeud la commande kubectl drain peut être utilisée. Pour comprendre comment l’utiliser correctement, suivre le tutorial “Comment supprimer tous les pods d’un noeud”.

Liens intéressants

Références