Sobes.tech
Junior

Mis on marsruudid Kubernetesis ja milleks neid kasutatakse?

sobes.tech AI

Vastus AI-lt

Marsruudid, või Ingress Routes, Kubernetesis on viis pakkuda välist juurdepääsu teenustele klastris. Need võimaldavad hallata sisenevat liiklust, suunates selle vastavatele teenustele vastavalt kasutaja määratud reeglitele.

Peamised marsruutide kasutamise eesmärgid:

  • Välise juurdepääsu võimaldamine: Teevad rakendused kättesaadavaks väljastpoolt klastrit.
  • Koormuse jaotamine: Jaotavad siseneva liikluse mitme teenuse eksemplari vahel.
  • SSL/TLS terminatsioon: Töötleb HTTPS-ühendusi Ingressi tasemel, vabastades teenused.
  • Virtuaalne hostimine: Võimaldab suunata liiklust erinevatele teenustele sõltuvalt päringu hosti nimest.
  • Tee põhjal maršruteerimine: Suunab liiklust erinevatele teenustele sõltuvalt URL-i teest päringus.

Tüüpiline reeglite struktuur (Ingressi manifest) võib välja näha järgmiselt:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: example-ingress
spec:
  rules:
  - host: example.com
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: my-service
            port:
              number: 80
      - path: /api
        pathType: Prefix
        backend:
          service:
            name: api-service
            port:
              number: 8080

Selles näites suunatakse liiklus example.com-ile ilma teeta, teenusele my-service (pordid 80), ja liiklus example.com/api-le teenusele api-service (pordid 8080).

Ingressi toimimiseks on vajalik Ingress Controller, mis toimib tagasipropuskana ja rakendab Ingressi ressurssides määratletud reegleid. Populaarsed Ingressi kontrollijad hõlmavad Nginx Ingress Controllerit, Ambassadore, Traefiki.