This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
как_и_чем_заменить_ingress_nginx [2026/03/11 09:57] val |
как_и_чем_заменить_ingress_nginx [2026/04/12 09:23] (current) val |
||
|---|---|---|---|
| Line 6: | Line 6: | ||
| * [[https://krisadas.medium.com/k8s-keycloak-with-traefik-ada27f62ac3e|K8S Keycloak with Traefik]] | * [[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://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 | * [[Все что должен знать DevOps про HTML]], HTTP и REST | ||
| Line 24: | Line 24: | ||
| ===== Запись вебинара ===== | ===== Запись вебинара ===== | ||
| - | * Тэги: Ingress, NGINX, | + | * Ютуб: https://youtu.be/QxN5w3aT3Lo |
| + | * Рутуб: https://rutube.ru/video/private/8fa4647ac6d0f1ddc4fd52eff6d157be/ | ||
| + | * Вк: https://vkvideo.ru/video-2190892_456239500 | ||
| + | * Тэги: Kubernetes, Ingress, NGINX, Traefik, Envoy, Gateway API | ||
| ===== Шаг 1. Что у нас есть, для начала ===== | ===== Шаг 1. Что у нас есть, для начала ===== | ||
| Line 36: | Line 39: | ||
| <code> | <code> | ||
| kube1:~/webd-k8s# cat my-webd-deployment.yaml | kube1:~/webd-k8s# cat my-webd-deployment.yaml | ||
| + | </code><code> | ||
| ... | ... | ||
| image: brndnmtthws/nginx-echo-headers | image: brndnmtthws/nginx-echo-headers | ||
| - | ... | ||
| </code> | </code> | ||
| * [[Система Kubernetes#Service]] | * [[Система Kubernetes#Service]] | ||
| + | <code> | ||
| + | kube1:~/webd-k8s# cat my-webd-service.yaml | ||
| + | </code><code> | ||
| + | ... | ||
| + | targetPort: 8080 | ||
| + | </code> | ||
| ===== Шаг 3. Доступ к приложению через Ingress NGINX ===== | ===== Шаг 3. Доступ к приложению через Ingress NGINX ===== | ||
| * [[Система Kubernetes#MetalLB]] | * [[Система Kubernetes#MetalLB]] | ||
| Line 48: | Line 56: | ||
| * [[Решение FreeIPA#Создание ключа и сертификата для стороннего сервиса]] ehwebd | * [[Решение FreeIPA#Создание ключа и сертификата для стороннего сервиса]] ehwebd | ||
| + | |||
| * [[Система Kubernetes#secrets tls]] | * [[Система Kubernetes#secrets tls]] | ||
| <code> | <code> | ||
| Line 54: | Line 63: | ||
| * [[Система Kubernetes#ingress example]] | * [[Система Kubernetes#ingress example]] | ||
| - | |||
| - | ===== Шаг 4. Замена Ingress NGINX на Ingress Traefik ===== | ||
| <code> | <code> | ||
| - | kube1:~/webd-k8s# kubectl delete -f my-ingress.yaml -n my-ns | + | client1.corp13.un:~# curl https://ehwebd.corp13.un #-H "X-Forwarded-For: 192.168.13.101" |
| </code> | </code> | ||
| + | ===== Шаг 4. Замена Ingress NGINX на Ingress Traefik ===== | ||
| * [[Система Kubernetes#ingress-traefik-controller]] | * [[Система Kubernetes#ingress-traefik-controller]] | ||
| + | <code> | ||
| + | kube1:~/traefik# cat values.yaml | ||
| + | service: | ||
| + | spec: | ||
| + | loadBalancerIP: "192.168.13.66" | ||
| + | </code> | ||
| <code> | <code> | ||
| Line 67: | Line 81: | ||
| kube1:~/webd-k8s# cat my-ingress.yaml | kube1:~/webd-k8s# cat my-ingress.yaml | ||
| + | </code><code> | ||
| + | ... | ||
| + | # ingressClassName: nginx | ||
| + | ingressClassName: traefik | ||
| ... | ... | ||
| # number: 8080 | # number: 8080 | ||
| Line 73: | Line 91: | ||
| </code> | </code> | ||
| + | * ehwebd A 192.168.13.66 | ||
| + | |||
| + | <code> | ||
| + | kube1:~/webd-k8s# kubectl apply -f my-ingress.yaml -n my-ns | ||
| + | </code> | ||
| ===== Шаг 5. Замена Ingress на Gateway API ===== | ===== Шаг 5. Замена Ingress на Gateway API ===== | ||
| + | * [[https://habr.com/ru/companies/gnivc/articles/992366/|Прощай, Ingress. Здравствуй, Gateway API]] | ||
| + | ==== GatewayClass (Инфраструктура/Провайдер) ==== | ||
| * [[Система Kubernetes#Gateway API]] | * [[Система Kubernetes#Gateway API]] | ||
| Line 81: | Line 106: | ||
| * [[Система Kubernetes#Envoy Gateway]] | * [[Система Kubernetes#Envoy Gateway]] | ||
| + | ==== GatewayClass (DevOps предприятия) ==== | ||
| * [[Система Kubernetes#Gateway]] | * [[Система Kubernetes#Gateway]] | ||
| + | |||
| + | ==== HTTPRoute / TLSRoute (Разработчики приложений) ==== | ||
| * [[Система Kubernetes#HTTPRoute]] | * [[Система Kubernetes#HTTPRoute]] | ||