Kas yra maršrutai Kubernetes ir kam jie naudojami?
sobes.tech AI
Atsakymas iš AI
Maršrutai, arba Ingress Routes, Kubernetes – tai būdas suteikti išorinį prieigą prie paslaugų klasteryje. Jie leidžia valdyti įeinantį srautą, nukreipiant jį į atitinkamas paslaugas pagal naudotojo nustatytas taisykles.
Pagrindiniai maršrutų naudojimo tikslai:
- Išorinės prieigos suteikimas: Padaro programas prieinamas iš išorės.
- Našumo paskirstymas: Paskirsto įeinantį srautą tarp kelių paslaugų egzempliorių.
- SSL/TLS terminavimas: Apdoroja HTTPS ryšius Ingress lygyje, atlaisvindamas paslaugas.
- Virtualusis hostingo: Leidžia nukreipti srautą į skirtingas paslaugas priklausomai nuo užklausos hosto vardo.
- Maršrutizavimas pagal kelią: Nukreipia srautą į skirtingas paslaugas priklausomai nuo URL kelio užklausoje.
Tipinė maršrutizacijos taisyklės struktūra (Ingress manifestas) gali atrodyti taip:
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
Šiame pavyzdyje srautas į example.com be kelio nurodymo nukreipiamas į paslaugą my-service (portas 80), o srautas į example.com/api – į paslaugą api-service (portas 8080).
Norint naudoti Ingress, būtinas Ingress Controller, kuris veikia kaip atvirkštinis proxy serveris ir įgyvendina taisykles, nustatytas Ingress resursuose. Populiarūs Ingress kontroleriai apima Nginx Ingress Controller, Ambassador, Traefik.