[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-kubernetes-chto-takoe-ingress-i-ingress-controller":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":15,"progress":16,"seo":17},1315,"chto-takoe-ingress-i-ingress-controller",26,"kubernetes","Kubernetes","☸️","Что такое Ingress и Ingress Controller?","Ingress — объект Kubernetes, который управляет внешним HTTP\u002FHTTPS-доступом к сервисам внутри кластера. Позволяет определять правила маршрутизации на основе хоста и пути запроса.\n\n### Зачем нужен Ingress, если есть Service LoadBalancer\n\n- Service LoadBalancer создаёт отдельный балансировщик для каждого сервиса — это дорого\n- Ingress позволяет использовать один балансировщик для множества сервисов, маршрутизируя трафик по правилам\n- Ingress поддерживает SSL\u002FTLS-терминацию, перенаправление, URL rewriting\n\n\u003Cdetails>\n\u003Csummary>Пример манифеста Ingress\u003C\u002Fsummary>\n\n```yaml\napiVersion: networking.k8s.io\u002Fv1\nkind: Ingress\nmetadata:\n  name: my-app-ingress\n  annotations:\n    nginx.ingress.kubernetes.io\u002Frewrite-target: \u002F\nspec:\n  ingressClassName: nginx\n  tls:\n    - hosts:\n        - myapp.example.com\n      secretName: myapp-tls-secret\n  rules:\n    - host: myapp.example.com\n      http:\n        paths:\n          - path: \u002Fapi\n            pathType: Prefix\n            backend:\n              service:\n                name: backend-service\n                port:\n                  number: 80\n          - path: \u002F\n            pathType: Prefix\n            backend:\n              service:\n                name: frontend-service\n                port:\n                  number: 80\n```\n\n\u003C\u002Fdetails>\n\n### Ingress Controller\n\nСам объект Ingress — это просто набор правил. Для их реализации необходим Ingress Controller — отдельный компонент, который считывает правила Ingress и настраивает реальный прокси-сервер.\n\nПопулярные Ingress Controller'ы:\n\n- NGINX Ingress Controller — самый популярный, на базе NGINX\n- Traefik — лёгкий, с автоматическим обнаружением сервисов\n- HAProxy Ingress — на базе HAProxy\n- AWS ALB Ingress Controller — для AWS Application Load Balancer\n- Istio Ingress Gateway — часть service mesh Istio\n\nIngress Controller необходимо устанавливать отдельно — он не входит в стандартную поставку Kubernetes.\n\n> **На собеседовании:** ключевое — объяснить, зачем Ingress нужен поверх Service LoadBalancer (экономия ресурсов, единая точка входа, SSL-терминация). Частая ошибка — забыть, что Ingress без Ingress Controller не работает.","","middle",[7],[],null,{"title":18,"description":19,"ogTitle":18,"ogDescription":20,"keywords":21,"schemaAnswer":22,"featuredSnippetReady":23},"Что такое Ingress и Ingress Controller? — Gymterview","Ingress — объект Kubernetes, который управляет внешним HTTP\u002FHTTPS-доступом к сервисам внутри кластера. Позволяет определять правила маршрутизации на основе хост","Ingress — объект Kubernetes, который управляет внешним HTTP\u002FHTTPS-доступом к сервисам внутри кластера. Позволяет определ",[7,13],"Ingress — объект Kubernetes, который управляет внешним HTTP\u002FHTTPS-доступом к сервисам внутри кластера. Позволяет определять правила маршрутизации на основе хоста и пути запроса.",true]