Šta su rute u Kubernetes i zašto se koriste?
sobes.tech АИ
Одговор од АИ
Rute, ili Ingress Routes, u Kubernetes-u, predstavljaju način za obezbeđivanje spoljnog pristupa servisima unutar klastera. Omogućavaju upravljanje ulaznim saobraćajem, usmeravajući ga ka odgovarajućim servisima u skladu sa pravilima koja je definisao korisnik.
Glavni ciljevi korišćenja ruta:
- Obezbeđivanje spoljnog pristupa: Čine aplikacije dostupnim spolja klastera.
- Ravnomerno opterećenje: Raspoređuju ulazni saobraćaj između više instanci servisa.
- SSL/TLS terminacija: Obrađuju HTTPS veze na nivou Ingress-a, rasterećujući servise.
- Virtuelni hosting: Omogućavaju usmeravanje saobraćaja na različite servise u zavisnosti od imena hosta u zahtevu.
- Usmeravanje na osnovu puta: Usmeravaju saobraćaj na različite servise u zavisnosti od URL puta u zahtevu.
Tipična struktura pravila usmeravanja (u manifestu Ingress-a) može izgledati ovako:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: primer-ingress
spec:
rules:
- host: primer.rs
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
U ovom primeru, saobraćaj na primer.rs bez specificiranja puta usmerava se na servis my-service (port 80), a saobraćaj na primer.rs/api usmerava se na servis api-service (port 8080).
Da bi Ingress radio, potreban je Ingress Controller, koji funkcioniše kao reverzni proxy i implementira pravila definisana u Ingress resursima. Popularni Ingress kontroleri uključuju Nginx Ingress Controller, Ambassador, Traefik.