Junior
Qu'est-ce que NodePort et quelles fonctionnalités offre-t-il?
sobes.tech IA
Réponse de l'IA
NodePort est un type de Service dans Kubernetes qui ouvre un port sur chaque nœud du cluster. Le trafic envoyé à ce port sur n'importe quel nœud est redirigé vers les Pods associés à ce Service.
Fonctionnalités de NodePort:
- Changement de comportement : Fournit un accès externe au service. Le trafic externe au cluster peut atteindre le service via n'importe quelle IP du nœud et le NodePort configuré.
- Ports :
- NodePort : Plage par défaut 30000-32767. Peut être modifié via la configuration du cluster.
- TargetPort : Port sur le Pod vers lequel le trafic est redirigé.
- Port : Port du Service à l'intérieur du cluster.
| Port | Description | Utilisation |
|---|---|---|
| NodePort | Port ouvert sur chaque nœud | Accès externe au service |
| TargetPort | Port sur le Pod | Redirection du trafic du Service vers le Pod |
| Port | Port du Service à l'intérieur du cluster | Interaction interne entre services |
- Disponibilité : Le service est accessible via
NodeIP:NodePortdepuis n'importe quel nœud du cluster. - Restrictions :
- Nécessite l'ouverture du NodePort sur chaque nœud.
- Non adapté pour la production en raison de la plage fixe de ports et de la nécessité de connaître l'IP du nœud.
- Plus difficile à faire évoluer comparé à LoadBalancer ou Ingress.
Exemple YAML pour NodePort Service:
apiVersion: v1
kind: Service
metadata:
name: my-nodeport-service
spec:
type: NodePort
selector:
app: my-app # Sélecteur pour choisir les Pods
ports:
- protocol: TCP
port: 80 # Port du Service
targetPort: 8080 # Port sur le Pod
nodePort: 31000 # NodePort attribué (optionnel, sélectionné automatiquement si non spécifié)