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.