Service Kubernetes

Comprendre les Services Kubernetes : ClusterIP et NodePort
Kubernetes : une introduction aux services réseaux
Kubernetes est une plateforme open-source d’orchestration de conteneurs qui facilite le déploiement, la mise à l’échelle et la gestion d’applications conteneurisées. Au cœur de Kubernetes, les services permettent de rendre accessible un ensemble de pods via une interface réseau stable et abstraite.
Service ClusterIP
Le type ClusterIP est le type par défaut d’un service Kubernetes. Il attribue une adresse IP interne au cluster qui rend un service accessible uniquement au sein du cluster Kubernetes.
C’est idéal pour la communication entre pods d’applications, comme un backend accessible à des frontend à l’intérieur du cluster.

Service NodePort
Le service NodePort permet d’exposer un service sur un port statique sur chaque nœud du cluster. Cela rend le service accessible depuis l’extérieur du cluster via l’adresse IP de n’importe quel nœud et ce port.
Cela est particulièrement utile pour les tests, ou les scénarios où un équilibre de charge externe n’est pas configuré.

Exemples concrets d’utilisation
Exemple de ClusterIP : Service interne Redis
Imaginons un service Redis ne devant être accessible que par les applications backend IRL.
- Déploiement d’un pod Redis.
- Service ClusterIP nommé
redisqui précise un sélecteur sur ce pod. - Les autres pods utilisent
redis:6379pour communiquer en réseau Kubernetes.
Exemple NodePort : exposer une application web
Pour un accès externe rapide sans configurer de LoadBalancer :
- Déployer un pod avec une app web sur le port 80.
- Créer un Service NodePort sur un port, par exemple 30080.
- Accéder à l’app via
http://IP_du_nœud:30080depuis l’extérieur.
Note : dans un cluster cloud managé (ex: GKE, AKS), NodePort sert souvent en backend de LoadBalancer.
Conclusion et bons usages
Le choix entre ClusterIP et NodePort dépend de votre besoin d’accès réseau :
- ClusterIP : accès interne, communication interne. Plus sécurisé et recommandé pour les services privés.
- NodePort : accès direct externe sur chaque nœud, simple mais limité et demande plus d’attention à la sécurisation.
Pour une exposition externe professionnelle, mieux vaut privilégier une combinaison avec un LoadBalancer ou un Ingress controller.