Sobes.tech
Junior

Mi az a NodePort és milyen funkciót nyújt?

sobes.tech MI

Válasz az MI-től

A NodePort a Kubernetes egyik típusú szolgáltatása, amely minden csomóponton (Node) megnyit egy portot. Az erre a portra küldött forgalom bármelyik csomóponton átirányításra kerül a hozzá kapcsolódó Podokhoz.

A NodePort funkciói:

  • Viselkedésváltozás: Külső hozzáférést biztosít a szolgáltatáshoz. A klaszteren kívüli forgalom elérheti a szolgáltatást bármelyik Node IP-jén és a beállított NodePorton keresztül.
  • Portok:
    • NodePort: Alapértelmezett tartomány 30000-32767. A klaszter beállításai szerint módosítható.
    • TargetPort: A Podon lévő port, ahová a forgalom irányul.
    • Port: A szolgáltatás portja a klaszteren belül.
Port Leírás Használat
NodePort Minden csomóponton nyitott port Külső hozzáférés a szolgáltatáshoz
TargetPort Podon lévő port A forgalom átirányítása a szolgáltatástól a Podhoz
Port A szolgáltatás portja a klaszteren belül Belső kommunikáció a szolgáltatások között
  • Elérhetőség: A szolgáltatás a NodeIP:NodePort címen elérhető bármelyik Node-ról a klaszterben.
  • Korlátozások:
    • Minden Node-on nyitva kell legyen a NodePort.
    • Nem alkalmas termelési környezetben a fix porttartomány és az IP-cím ismerete miatt.
    • Nehezebb skálázni, mint a LoadBalancer vagy Ingress megoldások.

Példa YAML a NodePort szolgáltatáshoz:

apiVersion: v1
kind: Service
metadata:
  name: my-nodeport-service
spec:
  type: NodePort
  selector:
    app: my-app # Kiválasztó a Podok kiválasztásához
  ports:
    - protocol: TCP
      port: 80 # Szolgáltatás portja
      targetPort: 8080 # Pod portja
      nodePort: 31000 # Hozzárendelt NodePort (opcionális, automatikusan kiválasztódik, ha nem adod meg)