Sobes.tech
Junior

Šta je NodePort i kakvu funkcionalnost pruža?

sobes.tech АИ

Одговор од АИ

NodePort je tip usluge u Kubernetes-u koji otvara port na svakom čvoru (Node) u klasteru. Saobraćaj poslat na taj port na bilo kojem čvoru preusmerava se na Pod-ove povezane sa ovom uslugom.

Funkcionalnost NodePort:

  • Promena ponašanja: Omogućava spoljašnji pristup usluzi. Saobraćaj izvan klastera može dostići uslugu putem bilo koje IP adrese čvora i konfigurisanog NodePort-a.
  • Portovi:
    • NodePort: Podrazumevani opseg 30000-32767. Može biti izmenjen podešavanjima klastera.
    • TargetPort: Port na Pod-u na koji se preusmerava saobraćaj.
    • Port: Port usluge unutar klastera.
Port Opis Upotreba
NodePort Port otvoren na svakom čvoru Spoljašnji pristup usluzi
TargetPort Port na Pod-u Preusmeravanje saobraćaja od usluge do Pod-a
Port Port usluge unutar klastera Unutrašnja komunikacija između usluga
  • Dostupnost: Usluga je dostupna putem adrese NodeIP:NodePort sa bilo kog čvora u klasteru.
  • Ograničenja:
    • Zahteva otvaranje NodePort-a na svakom čvoru.
    • Nije pogodno za produkciono okruženje zbog fiksnog opsega portova i potrebe da se zna IP adresa čvora.
    • Teže za skaliranje u poređenju sa LoadBalancer ili Ingress.

Primer YAML za NodePort uslugu:

apiVersion: v1
kind: Service
metadata:
  name: my-nodeport-service
spec:
  type: NodePort
  selector:
    app: my-app # Selektor za izbor Pod-ova
  ports:
    - protocol: TCP
      port: 80 # Port usluge
      targetPort: 8080 # Port na Pod-u
      nodePort: 31000 # Dodeljeni NodePort (opciono, automatski će biti izabran ako nije naveden)