====== Как и чем заменить Ingress NGINX ======
* [[https://gateway-api.sigs.k8s.io/guides/getting-started/|Getting started with Gateway API]]
* [[https://kubernetes.io/blog/2025/11/11/ingress-nginx-retirement/|Ingress NGINX Retirement: What You Need to Know]]
* [[https://docs.rafay.dev/blog/2025/12/05/goodbye-to-ingress-nginx--what-happens-next/|Goodbye to Ingress NGINX – What Happens Next?]]
* [[https://krisadas.medium.com/k8s-keycloak-with-traefik-ada27f62ac3e|K8S Keycloak with Traefik]]
* [[https://tetrate.io/blog/migrating-from-ingress-nginx-to-envoy-gateway|Migrating from ingress-nginx to Envoy Gateway]]
* [[https://habr.com/ru/companies/gnivc/articles/992366/|Прощай, Ingress. Здравствуй, Gateway API]]
* [[Все что должен знать DevOps про HTML]], HTTP и REST
* [[Стратегии деплоя в Kubernetes]]
===== Реклама =====
* Не так часто случается в индустрии, когда решение, долгое время используемое в качестве стандартного, вдруг оказывается без официальной поддержки. На нашем вебинаре мы обсудим причины и "как жить дальше" без Ingress NGINX, а так же узнаем, как и на что его можно заменить (спойлер: Traefik, Envoy, но, это не точно:)
===== Техническое задание =====
* Развернуть альтернативные решения, реализующие Ingress API
* Проверить работу приложений, использующих Ingress API
* Развернуть решения, реализующие Gateway API
* Провести миграцию приложений на Gateway API
===== Запись вебинара =====
* Тэги: Ingress, NGINX,
===== Шаг 1. Что у нас есть, для начала =====
* Система Kubernetes [[Система Kubernetes#Развертывание через Kubespray]]
* [[Решение FreeIPA]]
===== Шаг 2. Развертывание приложения =====
* [[Система Kubernetes#Deployment]]
kube1:~/webd-k8s# cat my-webd-deployment.yaml
...
image: brndnmtthws/nginx-echo-headers
...
* [[Система Kubernetes#Service]]
===== Шаг 3. Доступ к приложению через Ingress NGINX =====
* [[Система Kubernetes#MetalLB]]
* [[Система Kubernetes#Установка Helm]]
* [[Система Kubernetes#ingress-nginx]]
* [[Решение FreeIPA#Создание ключа и сертификата для стороннего сервиса]] ehwebd
* [[Система Kubernetes#secrets tls]]
kube1:~# kubectl create secret tls ehwebd-tls --key /tmp/ehwebd.key --cert /tmp/ehwebd.crt -n my-ns
* [[Система Kubernetes#ingress example]]
===== Шаг 4. Замена Ingress NGINX на Ingress Traefik =====
kube1:~/webd-k8s# kubectl delete -f my-ingress.yaml -n my-ns
* [[Система Kubernetes#ingress-traefik-controller]]
kube1:~/webd-k8s# kubectl -n traefik logs pods/traefik-
kube1:~/webd-k8s# cat my-ingress.yaml
...
# number: 8080
number: 80
...
===== Шаг 5. Замена Ingress на Gateway API =====
* [[Система Kubernetes#Gateway API]]
* [[Система Kubernetes#Traefik]]
* [[Система Kubernetes#Envoy Gateway]]
* [[Система Kubernetes#Gateway]]
* [[Система Kubernetes#HTTPRoute]]