Junior
Wat is NodePort en welke functionaliteit biedt het?
sobes.tech AI
Antwoord van AI
NodePort is een type Service in Kubernetes dat een poort opent op elke Node in de cluster. Verkeer dat naar deze poort op een willekeurige Node wordt gestuurd, wordt doorgestuurd naar de Pods die aan deze Service zijn gekoppeld.
Functionaliteit van NodePort:
- Gedragsverandering: Biedt externe toegang tot de service. Het verkeer buiten de cluster kan de service bereiken via elk IP van een Node en de geconfigureerde NodePort.
- Poorten:
- NodePort: Standaard bereik 30000-32767. Kan worden gewijzigd via clusterinstellingen.
- TargetPort: Poort op de Pod waarnaar verkeer wordt doorgestuurd.
- Port: Poort van de Service binnen de cluster.
| Poort | Beschrijving | Gebruik |
|---|---|---|
| NodePort | Poort geopend op elke Node | Externe toegang tot de service |
| TargetPort | Poort op de Pod | Verkeer van de Service naar de Pod doorsturen |
| Port | Poort van de Service binnen de cluster | Interne communicatie tussen services |
- Beschikbaarheid: De service is bereikbaar via
NodeIP:NodePortvanaf elke Node in de cluster. - Beperkingen:
- Vereist het openen van de NodePort op elke Node.
- Niet geschikt voor productieomgevingen vanwege het vaste poortbereik en de noodzaak om het IP van de Node te kennen.
- Moeilijker schaalbaar in vergelijking met LoadBalancer of Ingress.
Voorbeeld YAML voor NodePort Service:
apiVersion: v1
kind: Service
metadata:
name: my-nodeport-service
spec:
type: NodePort
selector:
app: my-app # Selector voor het kiezen van Pods
ports:
- protocol: TCP
port: 80 # Poort van de Service
targetPort: 8080 # Poort op de Pod
nodePort: 31000 # Toegewezen NodePort (optioneel, wordt automatisch gekozen als niet gespecificeerd)