惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
Netflix TechBlog - Medium
V
Vulnerabilities – Threatpost
Last Week in AI
Last Week in AI
I
InfoQ
酷 壳 – CoolShell
酷 壳 – CoolShell
H
Help Net Security
D
Docker
www.infosecurity-magazine.com
www.infosecurity-magazine.com
B
Blog RSS Feed
Forbes - Security
Forbes - Security
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Latest news
Latest news
S
SegmentFault 最新的问题
J
Java Code Geeks
C
CXSECURITY Database RSS Feed - CXSecurity.com
MongoDB | Blog
MongoDB | Blog
量子位
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
F
Full Disclosure
Engineering at Meta
Engineering at Meta
AWS News Blog
AWS News Blog
月光博客
月光博客
Cisco Talos Blog
Cisco Talos Blog
V
Visual Studio Blog
雷峰网
雷峰网
博客园_首页
Project Zero
Project Zero
美团技术团队
Google DeepMind News
Google DeepMind News
IT之家
IT之家
P
Palo Alto Networks Blog
有赞技术团队
有赞技术团队
S
Security @ Cisco Blogs
U
Unit 42
C
Cisco Blogs
Hugging Face - Blog
Hugging Face - Blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Security Archives - TechRepublic
Security Archives - TechRepublic
GbyAI
GbyAI
Stack Overflow Blog
Stack Overflow Blog
S
Schneier on Security
TaoSecurity Blog
TaoSecurity Blog
The Register - Security
The Register - Security
WordPress大学
WordPress大学
T
Threat Research - Cisco Blogs
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
I
Intezer
The Last Watchdog
The Last Watchdog
Cloudbric
Cloudbric
Help Net Security
Help Net Security

Все публикации подряд на Хабре

Ловим музу за клавиатуру: как айтишнику стать автором Что умеет Midjourney в 2026? Мой немного грустный разбор этого шикарного инструмента Никто не любит писать тесты, но ИИ может исправить это IPv8 выглядит как мечта. Поэтому почти наверняка не взлетит Производители вернули в продажу материнки с DDR3. Что происходит? Управление агентом с телефона через Telegram теперь в KodaCode От координации к лидерству: как меняется роль руководителя разработки Я сделала родителям бизнес вместо пенсии: зарабатываем 70 тысяч, мама не даёт продать В три раза быстрее приемка товара и оптимизация трудозатрат на 73%: как «РСТ-Инвент» помог Gulliver Group ИИ-шечный мир победил? О влиянии искусственного интеллекта на игропром Кремль снижает давление на Телеграмм пока Европа строит интернет по паспорту Как CEO, CTO и CIO за 8 часов собрали ИИ-директора, который умеет держать позицию под давлением Как (не) потерять домен за выходные Вместо 8 разных VPS: как я организовал практику студентам на одном сервере Почему твой Open Source проект не замечают? R&D: искусство управления неопределенностью в разработке AI-дефляция: вакансий для разработчиков больше, а рост зарплат — худший за 15 лет Мы отдали управление роботами OpenClaw. Что из этого вышло Галактический ID: система идентификации для всех форм разумной жизни Шесть основ бизнес-анализа: начинаем с вопроса «Кто в игре?» Код-ревью, в котором дело не в коде Данные переехали. Команда — нет Системной подход к сдаче OSWE в 2025 Почему комната управления реактором покрашена в цвет морской пены 4 YAML-файла вместо PySpark: как аналитикам строить пайплайны без разработчиков LLM-агент для поиска свободных доменов: автоматизируем подбор Когда, зачем и как правильно начинать новую сессию в Claude Code? Как я заставил нейросеть писать макросы для FreeCAD Анатомия ИИ‑агента для подбора персонала. От тысячи резюме к топ‑10 за минуты Опыт разработчика как экономика внимания Автономность как точка невозврата: кто будет субъектом в цифровом будущем Обучение ИИ в «диких» условиях: как рутинные действия превращаются в датасеты Как измерить LLM для задач кибербеза: обзор открытых бенчмарков Где хранить код? Сравнение GitHub, GitLab и Bitbucket Математика объясняет, почему нормальное распределение встречается повсюду Почему ваш FinOps не работает: 12 тезисов от практиков Как подписать проектную документацию УКЭП с использованием бесплатных лицензий Pilot Адаптивное администрирование Sigla Vision Я грузил уран в бочки, а потом 20 лет строил ИТ в атомной отрасли Чем позвонить с Эвереста? История и обзор спутниковой связи. Часть 2 Как языковая модель помогает контролировать качество инструктажей по охране труда в металлургии Как не передать на desktop свой IP в РКН Анатомия SAP Privileges: как устроено управление правами в macOS MoneyDev: Сказка про три главных слова Обновлённый токенизатор видео K-VAE 2.0 от Сбера Как сделать диспетчеризацию дома на 1284 квартиры почти бесплатно Как мы разогнали железную дорогу Мы дали агентам рутину. Теперь надо решить — что делать с освободившимся временем Токсичный контент, промпт-хакинг и защита ИИ — всё о Guardrails для LLM Умный город начинается с точного взгляда: как «Фалькон Тех» меняет пространство к лучшему Навайбкодил приложение для анализа графов Почему Дюну так интересно читать? Упрощаем работу с рутиной или как стать Гендальфом Белым Деконструкция Go: CPU, RAM и что там происходит. Go Assembler база. Часть 1.1 Какие профессии исчезнут из-за ИИ, а какие появятся? И что с этим делать Как мы построили IT-отдел, где хочется расти: архитектурные встречи, прозрачные метрики и книжные подарки Rufler: Делаем из Claude Code автономный рой через один YAML-конфиг Sing-box и белый список приложений Как построить надёжный обмен сообщениями в микросервисах: лучшие практики для enterprise OpenAI строит MLM-пирамиду, а McKinsey и Accenture помогают ей в этом Дом, который не построил Фишер (Часть 2) «Сверхзвуковой математик» против «Вдумчивого логиста»: битва алгоритмов 3D-упаковки Мультимодальные модели – грубый и дорогой инструмент Разговоры ничего не стоят. Код тоже Проверки физических лиц: с кого начнет ФНС Топ-10 бесплатных нейросетей для создания видео в 2026 году Первые слои кода: как наши решения сегодня определяют архитектуру ИИ на десятилетия Разработка нового статического анализатора: PVS-Studio JavaScript Поиск уязвимостей ПО: базовый минимум или роскошный максимум Почему оценка персонала не работает как инструмент управления Как мы разработали ИИ-ассистента и сократили рутину продуктовой команды на 50% Как я ушел из найма, нажарил косточек и продал на маркетплейсах на 168 млн в год Когда 1С:ERP уже внедрена, а нормального производственного плана всё ещё нет Как я сделал Claude мультимодальным, подключив к нему Qwen Omni Как приглашение на вакансию мечты превращается в атаку Infrastructure as Code: философия и лучшие практики IaC Тестируем Yandex Code Assistant на задаче, в которой нужно хранить секреты nxs-universal-chart v3.0: новое поколение универсального Helm-чарта Callback Injection: Техника, которая отправила Microsoft Defender в глухой нокаут «Все идеи на стол»: митап как способ вывести проект из тупика Сегодня я узнал нечто новое о GPU благодаря багу в своей игре Как заставить LLM ̶ ̶г̶а̶л̶л̶ю̶ ̶ эволюционировать Карта событий как фундамент аналитики: практический кейс для E-commerce Что выбрать для AI: x86, ARM или RISC-V? Дайджест железа за март Роль соматических мутаций в развитии аутоиммунных заболеваний: путь к избирательной терапии Mythos от Anthropic — тревожный сигнал для всех, а не только для банков Guardrails для LLM на Java: как приручить промпт‑инъекции и токсичные ответы Green-VLA: как мы собрали VLA-модель для реального антропоморфного робота и не потеряли обобщение Финансовая гонка вооружений: почему умные люди добровольно в ней участвуют Эра ИИ-агентов наступила: выбираем лучшего цифрового сотрудника # Практический опыт внедрения WinCC Redundancy на производственном предприятии Сделал MVP за 3 дня, а потом неделю прикручивал оплату. Оно того стоило? Физика против Маска: почему Starship V3 может оказаться ещё одной катастрофой Нефть Венесуэлы: крупнейшие запасы в мире, но не крупнейшая нефтяная держава JPA 4. Переосмысление Hibernate Почему зеркальная фотокамера Nikon D5 десятилетней давности идеально подошла для миссии «Артемида-2» Проект «Уровень-Спутник» или как мы сделали платформу для гидрологов «Замедлиться, чтобы ускориться»: почему ИИ повышает цену ошибок в требованиях и архитектуре Как с нуля поднять трафик IT-компании на 1657% при бюджете 55 тыс. и выжить Pixel-perfect Downsampling — идеальная отрисовка 50 миллионов точек без потерь
Kubernetes Gateway API в 2026 году: сравниваем Envoy Gateway, Istio, Cilium, Kong и NGINX Gateway Fabric
Евгений Левашов · 2026-06-03 · via Все публикации подряд на Хабре

13 мин

8.1K

Сейчас ландшафт сетей Kubernetes переживает самую значительную трансформацию со времен появления Ingress API в 2015 году. Gateway API прошел путь от бета-версии до General Availability и продолжает развиваться: к 2026 году — версия 1.4. Это фундаментальная переархитектура того, как трафик моделируется, управляется и защищается в Cloud-Native-окружениях. Это руководство — исчерпывающий анализ экосистемы вокруг этого стандарта: разбираем архитектурные подходы, характеристики производительности и наборы функций ведущих реализаций.

Наше исследование показывает: стандарт Gateway API успешно унифицировал базовый интерфейс конфигурации, заменив фрагментированную аннотационную модель Ingress, — но нижележащие реализации демонстрируют глубокие расхождения в производительности и операционном поведении.

Команда VK Cloud перевела статью для тех, кто уже несколько лет живет с зоопарком Ingress-аннотаций под NGINX, Traefik и ALB и сейчас выбирает, на что мигрировать. Автор разбирает Gateway API в его нынешнем состоянии (версия 1.4, GA), сравнивает пять Production-Ready-реализаций — Envoy Gateway, Istio в Ambient Mode, Cilium, Kong и NGINX Gateway Fabric — и дает фреймворк выбора под конкретный профиль нагрузки. Никакого маркетинга и «лучшего решения для всех»: цифры по Latency и CPU, архитектурные компромиссы, явные пределы масштабирования каждой модели.

Смена парадигмы: от Ingress к Gateway API

Чтобы понять сравнительные достоинства современных реализаций, сначала разберем недостатки, которые они призваны устранить. Ведь Gateway API — это структурное исправление ограничений ресурса Ingress.

Структурные ограничения Ingress API

Ingress API разработали в эпоху, когда кластеры Kubernetes часто были небольшими, однотенантными и ориентированными в первую очередь на простую HTTP-маршрутизацию. Он давал монолитный конфигурационный объект, который объединял предоставление инфраструктуры с маршрутизацией приложений. Эта связанность оказалась катастрофической для мультитенантных операций: Cluster Operator, управляющий инфраструктурой балансировщика нагрузки, вынужден был плотно координироваться с разработчиками приложений, определяющими маршруты. Часто это приводило к конфликтам прав доступа и случайным сбоям.

Следующая таблица подчеркивает ключевые структурные различия между устаревшей моделью Ingress и современной архитектурой Gateway API.

Характеристика

Ingress API

Gateway API

Модель ресурсов

Монолитная (объект Ingress)

Декомпозированная (GatewayClass, Gateway, Routes)

Целевая аудитория

Только Cluster Operator

Platform Ops, Cluster Ops и разработчики

Расширяемость

Проприетарные аннотации (строковые)

Стандартизированные поля API и Policy Attachment

Область трафика

Преимущественно North-South (Edge)

North-South (Edge) и East-West (Mesh)

Переносимость

Низкая (требуются переписывания под каждый контроллер)

Высокая (стандартизированная базовая спецификация)

Спецификация Ingress была печально известна тем, что ее недостаточно проработали. В ней не хватало стандартизированных полей для продвинутых, но обычных требований: разделения трафика, манипуляции заголовками, тайм-аутов. Чтобы заполнить пробел, вендоры ввели аннотации — строковые пары «ключ — значение», специфичные для каждого контроллера. Например, правило перезаписи требовало специальной аннотации для NGINX, но совершенно другой — для Traefik или HAProxy. Этот зоопарк аннотаций (Annotation Sprawl) уничтожал переносимость: перенос приложения из кластера на базе NGINX в кластер на базе AWS ALB требовал полного переписывания манифестов Ingress.

Философия дизайна Gateway API: ролевая декомпозиция

Gateway API вводит ролевую модель, которая декомпозирует эти проблемы на отдельные ресурсы, отражающие организационные структуры современных инженерных команд.

GatewayClass управляется Platform Provider — например, облачным провайдером или командой Platform Engineering. Действует как шаблон, определяющий, какой контроллер будет обрабатывать трафик. Например, кластер может иметь один GatewayClass для AWS Load Balancer, обращенного в интернет, и другой — для внутреннего Envoy-прокси.

Gateway управляется Cluster Operator. Этот ресурс представляет собой развернутый экземпляр физического или логического балансировщика нагрузки. Определяет listeners, включая порты, протоколы и настройки терминации TLS. Что важно, ресурс Gateway ничего не знает о бэкендах приложений — он знает только, как принимать трафик.

Routes (HTTPRoute, GRPCRoute, TLSRoute, TCPRoute и UDPRoute) управляются разработчиками приложений. Эти ресурсы привязываются к Gateway и определяют логику маршрутизации запросов от Listener к фактическим Kubernetes-сервисам. Привязка позволяет разработчикам независимо контролировать свою логику маршрутизации, если у них есть разрешение на присоединение к Gateway.

Стандартизация расширенного управления трафиком

В отличие от Ingress, Gateway API стандартизирует сложные паттерны трафика. Возможности, которые раньше требовали проприетарных аннотаций, теперь стали полноценными полями в спецификации API.

Разделение трафика поддерживается нативно. Ресурс HTTPRoute включает поле weight в своих backendRefs, что дает нативные канареечные деплои во всех соответствующих реализациях.

Модификация заголовков. Фильтры для добавления, удаления или изменения заголовков запросов и ответов стандартизированы. Это гарантирует, что определение маршрута остается валидным независимо от того, какой Data Plane используется: Envoy, NGINX или Pipy.

Маршрутизация между неймспейсами обрабатывается ресурсом ReferenceGrant. Он позволяет Gateway в неймспейсе Infra маршрутизировать трафик к Service в неймспейсе App через механизм безопасного рукопожатия — через явные RBAC-подобные гранты, а не через неявное доверие.

Три архитектурные модели реализации

API стандартен, но движки, приводящие его в действие, сильно различаются. В ландшафте 2025 года доминируют три архитектурные парадигмы: модель Envoy-Native, модель NGINX-Adapter и модель Kernel-Native eBPF.

Модель Envoy-Native

Envoy Proxy стал де-факто Data Plane для Cloud-Native-эпохи, и многие реализации Gateway API по сути являются Control Plane для Envoy. В этой модели, которую используют Envoy Gateway, Contour, Istio и Gloo, ресурсы Kubernetes транслируются контроллером в нативный конфигурационный протокол Envoy — xDS.

У такой архитектуры значительные преимущества. Envoy богат функциональностью и поддерживает продвинутые алгоритмы балансировки нагрузки, Circuit Breaking (размыкатель цепи) и глобальное ограничение частоты запросов «из коробки». Поскольку Gateway API сильно вдохновлен возможностями Envoy, часто наблюдается почти 1:1 соответствие между полями API и конфигурацией Envoy — это дает высокую точность реализации.

Однако модель не лишена издержек. Слой трансляции, преобразующий объекты Kubernetes в xDS, может быть ресурсоемким. В больших кластерах с тысячами маршрутов Control Plane должен пересчитывать весь граф зависимостей и отправлять обновления прокси Data Plane. Как показывают бенчмарки, эффективность этого цикла согласования значительно варьируется между такими реализациями, как Istio, и другими.

Модель NGINX-Adapter

NGINX остается самым популярным веб-сервером в мире, и его экосистема адаптировалась к Gateway API через проекты вроде NGINX Gateway Fabric и Kong. В отличие от модели согласованности в конечном счете у Envoy через xDS, NGINX традиционно полагался на конфигурационные файлы, которые требовали перезагрузки процесса для применения изменений.

Современные реализации NGINX смягчают штраф за перезагрузку разными стратегиями. Kong использует OpenResty для динамической маршрутизации трафика на основе данных, хранящихся в памяти, — это избавляет от перезагрузок при изменениях маршрутов. NGINX Gateway Fabric использует API NGINX Plus в коммерческой версии или высокооптимизированные перезагрузки конфигурации в версии OSS для применения состояния.

Проблема этой архитектуры — несоответствие моделей (Impedance Mismatch). Высокодинамичная и распределенная природа Gateway API естественно сочетается с дизайном Envoy, но для NGINX требует сложности слоя адаптации. Например, у NGINX Gateway Fabric наблюдался всплеск нагрузки на CPU, когда активны несвязанные контроллеры. Это указывает на неэффективность фильтрации потока событий Kubernetes по сравнению с более зрелыми контроллерами Envoy.

Модель Kernel-Native eBPF

Cilium представляет передовой край высокопроизводительных сетей и переносит Data Plane в ядро Linux с помощью eBPF. В традиционной прокси-модели пакет проходит через TCP-стек ядра, копируется в пользовательское пространство, где находится прокси, обрабатывается и затем копируется обратно в ядро для пересылки. Это переключение контекста влечет за собой задержку.

Архитектура Cilium пытается обойти это. Для трафика уровня L4 Cilium использует eBPF-программы, прикрепленные к сетевому интерфейсу, для прямой маршрутизации пакетов — это дает производительность, близкую к линейной скорости на Bare-Metal. Однако eBPF не может легко обрабатывать сложный парсинг уровня L7 — модификацию HTTP-заголовков или транскодирование gRPC. Поэтому Cilium использует гибридную модель: L4 обрабатывается в ядре, а трафик L7 передается в Envoy-прокси в пользовательском пространстве, управляемый Cilium.

Эта объединенная архитектура создает операционную сложность. Шлюз больше не просто под, а распределен по сетевому стеку всего кластера. Обновление реализации шлюза часто означает обновление самого CNI — высокорисковая операция, затрагивающая весь трафик кластера.

Глубокое погружение: экосистема Envoy-Native

Envoy Gateway: эталонная реализация стандарта

Envoy Gateway — это проект CNCF, инициированный для канонической и вендор-нейтральной реализации Gateway API для Envoy. Он родился из консолидации усилий Tetrate, Ambassador и других, чтобы остановить фрагментацию Ingress-контроллеров на базе Envoy.

Envoy Gateway работает по модели управляемой инфраструктуры. Когда пользователь создает ресурс Gateway, контроллер Envoy Gateway обнаруживает это и автоматически предоставляет необходимые ресурсы Kubernetes — Deployments, Services и HorizontalPodAutoscaler — для развертывания пула Envoy-прокси. Это отличается от старых контроллеров вроде Contour, где развертывание прокси часто было ручным или статическим.

Контроллер использует xDS-сервер для отправки динамических обновлений этим предоставленным прокси. Он поддерживает разделение ответственности: Control Plane может находиться в одном неймспейсе, управляя Gateway, распределенными по тенантным неймспейсам, при этом сохраняя строгие границы RBAC.

Envoy Gateway поддерживает всю широту стандарта: HTTPRoute, GRPCRoute, TLSRoute, TCPRoute и UDPRoute. Реализует разделение трафика и модификацию заголовков как стандартные базовые возможности. Что важно, Envoy Gateway решает проблему Policy Gap в Gateway API через свои кастомизированные ресурсы Policy. BackendTrafficPolicy настраивает алгоритмы балансировки нагрузки, тайм-ауты соединений и Circuit Breaking. SecurityPolicy обрабатывает аутентификацию и настройки CORS — пользователи могут защищать API без развертывания отдельного Sidecar аутентификации. EnvoyPatchPolicy — это мощный аварийный люк: пользователи могут внедрять сырую конфигурацию Envoy в формате JSON непосредственно в xDS-поток, если им нужна расширенная функция, еще не представленная в Gateway API.

Contour: зрелый предшественник

Contour — это выпускной проект CNCF и один из первых Ingress-контроллеров, принявших Envoy. Изначально он определил свой собственный CRD под названием HTTPProxy, который стал первопроходцем многих концепций, теперь найденных в Gateway API, например делегирования маршрутов между неймспейсами.

Contour теперь поддерживает Gateway API наряду с HTTPProxy. Он маппит listeners Gateway на порты Envoy, которыми управляет. Однако Contour работает преимущественно как статический Provisioner: предполагает, что пул Envoy уже развернут, и управляет конфигурацией, а не динамически разворачивает новые Envoy Deployments на каждый ресурс Gateway, как Envoy Gateway.

Многие пользователи остаются на HTTPProxy, потому что он все еще поддерживает Edge-кейсы, которые Gateway API еще догоняет. Однако обязательство Contour — приоритизировать Gateway API для будущей разработки функций. Пользователям, мигрирующим на Contour сегодня, рекомендуется использовать ресурсы Gateway API и применять HTTPProxy только тогда, когда конкретная функция отсутствует в стандарте.

Конвергенция Service Mesh: Istio и Cilium

Граница между Ingress и Service Mesh растворяется. Gateway API — катализатор этой конвергенции: единый язык как для North-South, так и для East-West-трафика.

Istio: всеобъемлющая платформа

Istio полностью принял Gateway API; собственные API Gateway и VirtualService для задач Ingress теперь Deprecated в пользу стандарта.

Новый Ambient Mode Istio — это революционная архитектура, влияющая на то, как реализован Gateway API. В традиционном Sidecar Mode Envoy работает в каждом поде. В Ambient Mode легкий и разделяемый L4-прокси под названием ztunnel работает на каждой ноде и обрабатывает mTLS и TCP-маршрутизацию. Обработка L7 выгружается в Waypoint proxy — по сути, Envoy Gateway, развернутые на каждый Service Account.

Когда пользователь определяет Gateway в Istio Ambient, разворачивается Waypoint proxy. Этот прокси применяет политики HTTPRoute для трафика, входящего в Mesh или перемещающегося между сервисами. Значит, Gateway API теперь интерфейс для политики внутреннего трафика Mesh, а не только внешнего доступа.

Istio использует Gateway API для привязки своих мощных политик безопасности. AuthorizationPolicy может быть прикреплена к Gateway для гранулярного контроля доступа. Реализация строго безопасна и придерживается стандартов FIPS для шифрования по умолчанию — это отличает ее от Cilium, который полагается на WireGuard или IPsec.

В бенчмарках Istio стабильно в топе по эффективности Control Plane. Его способность распространять изменения маршрутов на Data Plane измеряется в миллисекундах — значительно быстрее Traefik или NGINX. В Ambient Mode накладные расходы Data Plane резко снижены, и это делает Istio наиболее масштабируемым вариантом для больших и динамичных окружений.

Cilium: Kernel-Native-претендент

Cilium подходит к Gateway API снизу вверх и расширяет свои возможности CNI. Реализация Gateway API в Cilium уникальна: это не отдельный контроллер, а встроенный в Cilium-Operator и Cilium-Agent. Когда создается Gateway, Cilium транслирует это в eBPF-карты для L4-маршрутизации и конфигурацию Envoy — для L7.

Cilium Agent работает на каждой ноде и управляет разделяемым инстансом Envoy. Это создает риск конкуренции за ресурсы: единственный шумный тенант на ноде теоретически мог бы истощить разделяемый инстанс Envoy и повлиять на весь L7-трафик на этой ноде. Это контрастирует с Envoy Gateway или Istio, которые могут разворачивать выделенные прокси на каждый Gateway.

Cilium превосходит по пропускной способности L4, но его реализация Gateway API показала хрупкость при масштабировании. Бенчмарки показывают: в условиях частых изменений маршрутов или высокой нагрузки на соединения Cilium может входить в состояния, когда трафик отбрасывается, и требовать перезапуска компонентов. Кроме того, в стресс-тестах загрузка процессора может превышать нагрузку Istio в 15 раз. Эти данные предполагают: Cilium мощен, но его архитектура может столкнуться с пределами масштабирования, которых нет у архитектур с выделенными прокси.

NGINX и Legacy-экосистема

NGINX Gateway Fabric: эволюция гиганта

NGINX Gateway Fabric запустили, чтобы заменить почтенный контроллер Ingress-NGINX. Это реализация с нуля: Control Plane переписан на Go для нативной поддержки Gateway API.

Проект сохраняет строгое разделение между OSS и коммерческими функциями. Версия OSS поддерживает стандартные HTTPRoute и GRPCRoute, используя оптимизированные перезагрузки конфигурации для обновлений. Версия NGINX Plus добавляет Enterprise-функции непосредственно в интеграцию Gateway: активные проверки работоспособности, валидацию JWT и Key-Value-хранилища для разделения состояния между репликами.

NGINX Gateway Fabric оптимизирован под высокую пропускную способность. NGINX как Data Plane невероятно эффективен в обслуживании статических ассетов и обработке высокого количества соединений с низким потреблением памяти. Однако Control Plane менее зрелый, чем у Istio. Наблюдалось, что он чувствителен к шуму в кластере и дает всплеск нагрузки на CPU, когда другие контроллеры вносят несвязанные изменения, — логика фильтрации событий еще оптимизируется.

Kong: платформа API Management

Kong рассматривает Gateway API как стандартизированную точку входа в свою более широкую экосистему API Management. Отличительная черта Kong — система плагинов. Стандартные поля Gateway API обрабатывают маршрутизацию, но Kong поощряет пользователей применять ресурсы KongPlugin, прикрепленные к Routes, для расширенной логики: трансформации, ограничения частоты запросов, логирования.

Kong дает глубокую кастомизацию через плагины на Lua. Это мощная возможность для организаций, которым нужно запускать сложную бизнес-логику на уровне шлюза. Однако у Kong самый широкий разрыв между OSS- и Enterprise-предложениями. Критические операционные функции — GUI, продвинутая аналитика, OIDC-плагины — доступны только в Enterprise. Для организаций, строго ищущих Open-Source-решение, это ограничение часто дисквалифицирует Kong в пользу Envoy Gateway, который включает OIDC и ограничение частоты запросов в своем бесплатном Open Core.

Матрица функций и соответствия

Характеристика

Envoy Gateway

Istio (Ambient)

Cilium

Kong

NGINX Gateway Fabric

HTTPRoute

GRPCRoute

Разделение трафика

Между неймспейсами

Глобальное ограничение частоты запросов

✅ (BackendTrafficPolicy)

✅ (Global/Local)

🟡 (базовое)

🟡 (плагин)

🟡 (NJS/Plus)

Аутентификация

✅ (OIDC через SecurityPolicy)

✅ (mTLS/JWT)

🟡 (Network Policy)

❌ (только Enterprise)

❌ (только Plus)

Расширяемость

EnvoyPatchPolicy

Wasm / EnvoyFilter

CRD

плагины на Lua / Go

скриптинг NJS

Бенчмарки и операционная реальность

Синтез данных из бенчмарк-наборов выявляет критические уровни производительности. Для L4-трафика Cilium не имеет равных. Для чистой передачи TCP/UDP-пакетов его eBPF-датапас обходит накладные расходы ядра и обеспечивает пропускную способность, ограниченную только аппаратным сетевым интерфейсом.

Для L7-трафика Istio Ambient и Envoy Gateway идут практически вровень. Удаление Sidecar в Ambient Mode устранило штраф за двойной Hop и снизило задержку Mesh до уровней, близких к Bare-Metal.

Update Latency — это скрытый убийца операций. Когда разработчик пушит маршрут, время, необходимое для его активации, варьируется. Istio и Kong распространяют изменения за миллисекунды, а изменения в NGINX Gateway Fabric и Traefik могут занимать секунды. Это накапливается в CI/CD-пайплайнах, развертывающих сотни сервисов.

Таблица ниже суммирует ключевые характеристики производительности, наблюдаемые во время стресс-тестирования.

Метрика

Envoy Gateway

Istio (Ambient)

Cilium

NGINX Gateway Fabric

L4 Throughput

Стандартная

Стандартная

🚀 Непревзойденная (eBPF)

Стандартная

L7 Latency

Низкая

Низкая (без Sidecar)

Умеренная (гибридный прокси)

Низкая

Скорость Control Plane

Умеренная

⚡ Самая быстрая

Быстрая (L4) / Низкая (L7)

Низкая

Эффективность памяти

Умеренная

✅ Высокая (ztunnel — 12 МБ)

Умеренная

✅ Высокая

CPU под нагрузкой

Стабильно

Стабильно

Всплески (конкуренция Agent)

Чувствителен к шуму

Как выбрать: фреймворк под профиль нагрузки

На основе этого анализа предлагаем фреймворк принятия решений для корпоративного внедрения.

Искателю стандартизации рекомендуем Envoy Gateway. Для организаций, которым нужен чистый, Open-Source- и стандарт-совместимый Ingress без сложности Service Mesh, Envoy Gateway — оптимальный выбор. Он дает OIDC, ограничение частоты запросов и расширенную маршрутизацию «из коробки» без лицензионных платежей.

Архитектору Service Mesh рекомендуем Istio в Ambient Mode. Если в конечном счете цель — защитить East-West трафик, начните с Istio. Использование его для Gateway API сегодня плавно закладывает фундамент для mTLS и наблюдаемости завтра. Ambient Mode значительно снижает барьер входа: устраняет операционную головную боль управления Sidecar.

Инженеру «производительность любой ценой» рекомендуем Cilium. Если рабочая нагрузка доминируется L4-трафиком (стриминговые медиа или игровые серверы), eBPF Data Plane Cilium дает ощутимые преимущества. Однако будьте готовы к более крутому Learning Curve в отладке и потенциальным пределам масштабируемости L7.

Бизнесу монетизации API рекомендуем Kong Enterprise. Если шлюз — это продукт, генерирующий доход и требующий порталов для разработчиков, Kong Enterprise — единственный жизнеспособный кандидат в этом списке. Остальные — инфраструктурные шлюзы, тогда как Kong — это платформа API Marketplace.

Сильные и слабые стороны с одного взгляда

Чтобы дополнительно помочь в процессе принятия решений, приведем сводку ключевых сильных и слабых сторон каждой реализации для Production-окружений.

Характеристика

Envoy Gateway

Istio (Ambient)

Cilium

Kong

NGINX Gateway Fabric

Сильные стороны

100% Open Source, нативные OIDC/RateLimit, соответствие стандарту, сильная поддержка сообщества

Самый быстрый Control Plane, интегрированный Service Mesh, высокая безопасность (FIPS), низкая задержка

Непревзойденная L4-производительность (eBPF), глубокая сетевая видимость, интеграция с CNI

Богатая экосистема плагинов, функции API Management, сильная Enterprise-поддержка

Очень низкое потребление памяти, знакомая конфигурация для пользователей NGINX, стабильный Data Plane

Слабые стороны

«Среднеуровневая» скорость обновления, более новый проект, чем Istio/Kong

Более высокая сложность для простых сценариев использования, кривая обучения концепциям Mesh

Сложная отладка (eBPF), потенциальная конкуренция за ресурсы (разделяемый Agent), пределы масштабирования L7

Критические функции заперты за Enterprise-paywall, более тяжелое использование ресурсов (Java)

Более медленные обновления Control Plane, менее зрелая поддержка Gateway API, бифуркация функций (Plus vs OSS)