Sobes.tech
Junior

Čo sú to trasy v Kubernetes a na čo sa používajú?

sobes.tech AI

Odpoveď od AI

Trasy, alebo Ingress Routes, v Kubernetes, sú spôsob, ako poskytnúť externý prístup k službám v rámci klastru. Umožňujú riadiť prichádzajúci tok, smerujúc ho na príslušné služby podľa pravidiel, ktoré definuje používateľ.

Hlavné ciele používania trás:

  • Poskytnutie externého prístupu: Umožňujú prístup k aplikáciám zvonku klastru.
  • Vyrovnávanie záťaže: Rozdeľujú prichádzajúci tok medzi viacero inštancií služieb.
  • SSL/TLS terminácia: Spracovávajú HTTPS pripojenia na úrovni Ingress, odľahčujúc služby.
  • Virtuálne hosting: Umožňujú smerovať tok na rôzne služby v závislosti od názvu hostiteľa v požiadavke.
  • Routing na základe cesty: Smerujú tok na rôzne služby podľa URL cesty v požiadavke.

Typická štruktúra pravidla routovania (v manifeste Ingress) môže vyzerať takto:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: priklad-ingress
spec:
  rules:
  - host: priklad.sk
    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

V tomto príklade je tok na priklad.sk bez špecifikácie cesty smerovaný na službu my-service (port 80), a tok na priklad.sk/api je smerovaný na službu api-service (port 8080).

Aby Ingress fungoval, je potrebný Ingress Controller, ktorý funguje ako reverzný proxy a implementuje pravidlá definované v Ingress zdrojoch. Populárne Ingress controllery zahŕňajú Nginx Ingress Controller, Ambassador, Traefik.