advanced
Ingress
Маршрутизируйте внешний HTTP-трафик к Service через host, path, TLS, controller и политики на периметре.
Ingress описывает HTTP-маршрутизацию извне кластера к внутренним Service. Реальное поведение задаёт ingress controller (NGINX, Traefik, облачные LB) — TLS, hosts, paths, rewrites и annotations.
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: api
spec:
rules:
- host: api.example.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: api
port:
number: 80
Gateway API — более новая альтернатива для сложного L4/L7, но Ingress по-прежнему част на интервью.
На интервью: ресурс Ingress vs controller vs облачный LB; TLS termination; сопоставление path; canary; controller-specific annotations.
Типовые ошибки: манифест с одного controller не работает на другом; неверный TLS или path ломает или открывает маршруты.
Компромисс — переносимый YAML против фич controller с vendor-specific annotations.
Чеклист:
- Знать, какой controller в кластере.
- Явный TLS и hosts.
- Сквозное тестирование правил маршрутизации.
- Сравнение Ingress и Gateway API для greenfield.