Chapitre 4.2 - Types de Services
Objectifs d'Apprentissage
À la fin de ce chapitre, vous serez capable de:
- Comprendre les 4 types de Services
- Choisir le bon type selon le cas d'usage
- Configurer chaque type de Service
- Comprendre les différences
Types de Services
Kubernetes offre 4 types de Services:
1. ClusterIP (Par Défaut)
Accès interne au cluster uniquement.
apiVersion: v1
kind: Service
metadata:
name: clusterip-service
spec:
type: ClusterIP # Par défaut
selector:
app: web
ports:
- port: 80
Cas d'usage: Communication inter-services dans le cluster.
2. NodePort
Expose le Service sur un port de chaque node (30000-32767).
apiVersion: v1
kind: Service
metadata:
name: nodeport-service
spec:
type: NodePort
selector:
app: web
ports:
- port: 80
targetPort: 8080
nodePort: 30080 # Optionnel
Cas d'usage: Accès externe sans load balancer cloud.
3. LoadBalancer
Expose via un load balancer du cloud provider.
apiVersion: v1
kind: Service
metadata:
name: loadbalancer-service
spec:
type: LoadBalancer
selector:
app: web
ports:
- port: 80
Cas d'usage: Applications publiques en production.
4. ExternalName
Alias vers un service externe.
apiVersion: v1
kind: Service
metadata:
name: external-service
spec:
type: ExternalName
externalName: database.example.com
Cas d'usage: Référencer des services externes comme des services internes.
Comparaison
| Type | Accès | IP | Port | Cas d'Usage |
|---|---|---|---|---|
| ClusterIP | Interne | Cluster IP | 80 | Services internes |
| NodePort | Externe | Node IP | 30000-32767 | Dev/Test |
| LoadBalancer | Externe | Cloud IP | 80 | Production |
| ExternalName | Interne | CNAME | - | Services externes |
Résumé
Dans ce chapitre, vous avez appris:
ClusterIP: Accès interne uniquement (par défaut)
NodePort: Expose sur port de chaque node
LoadBalancer: Via load balancer cloud
ExternalName: Alias vers service externe
Choix: Selon le cas d'usage (interne/externe, dev/prod)
Prochaines Étapes
Maintenant que vous connaissez les types:
Chapitre 4.3: Service Discovery
Lab 4.1: Services ClusterIP et NodePort
Chapitre créé le: Décembre 2024