Sobes.tech
Junior

Co jsou to trasy v Kubernetes a k čemu slouží?

sobes.tech AI

Odpověď od AI

Trasy, nebo Ingress Routes, v Kubernetes, jsou způsob, jak poskytnout externí přístup ke službám uvnitř clusteru. Umožňují řídit příchozí provoz tím, že ho směrují na odpovídající služby podle pravidel definovaných uživatelem.

Hlavní cíle používání tras:

  • Poskytnutí externího přístupu: Umožňují zpřístupnit aplikace zvenčí clusteru.
  • Vyrovnávání zátěže: Rozdělují příchozí provoz mezi více instancí služeb.
  • SSL/TLS terminace: Zpracovávají HTTPS připojení na úrovni Ingress, odlehčují služby.
  • Virtuální hosting: Umožňují směrovat provoz na různé služby podle názvu hostitele v požadavku.
  • Směrování na základě cesty: Směruje provoz na různé služby podle URL cesty v požadavku.

Typická struktura pravidla směrování (v manifestu Ingress) může vypadat takto:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: priklad-ingress
spec:
  rules:
  - host: priklad.cz
    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 příkladu je provoz na priklad.cz bez určení cesty směrován na službu my-service (port 80), a provoz na priklad.cz/api je směrován na službu api-service (port 8080).

Pro správnou funkci Ingress je potřeba Ingress Controller, který funguje jako reverzní proxy a implementuje pravidla definovaná v Ingress zdrojích. Mezi oblíbené Ingress controllery patří Nginx Ingress Controller, Ambassador, Traefik.