Анонс Istio 1.30
Оголошення про випуск Istio 1.30.
Ми раді оголосити про випуск Istio 1.30. Дякуємо всім нашим учасникам, тестувальникам, користувачам та ентузіастам за допомогу в публікації версії 1.30.0! Ми хотіли б подякувати менеджерам з випуску цієї версії: Petr McAllister з Solo.io, Jacek Ewertowski з Red Hat та Jackson Greer з Microsoft.
ЗМІНИ
Отримайте детальний список змін.
ПЕРШ НІЖ ОНОВИТИСЬ
Що потрібно знати та підготувати перед оновленням.
ЗАВАНТАЖИТИ
Завантажити та встановити цей випуск.
ДОКУМЕНТАЦІЯ
Відвідайте документацію до цього випуску.
Що нового?
Agentgateway: експериментальна нова реалізація шлюзу
Istio 1.30 поставляє експериментальну підтримку agentgateway як реалізацію Gateway API. Agentgateway — це новий data plane проксі, побудований для трафіку AI агентів та MCP серверів; коли увімкнено, він замінює Envoy на pod шлюзу. У цьому релізі він підключений як єдиний GatewayClass (istio-agentgateway) і підтримується лише як Gateway API шлюз, не як sidecar чи waypoint. Увімкніть його, встановивши PILOT_ENABLE_AGENTGATEWAY=true на istiod. Див. документацію agentgateway Kubernetes для деталей встановлення та конфігурації. Ця функція перебуває на стадії раннього доступу. Можливі деякі недоліки; будемо раді отримати ваші відгуки.
Покращення Gateway API та TLSRoute
У цьому випуску додано підтримку термінації TLSRoute та змішаного режиму, підтримку пропускних прослуховувачів TLS на шлюзах типу схід-захід, а також звіти про приєднані ListenerSets та маршрути у статусі Gateway. У сукупності ці зміни наближають реалізацію API шлюзу Istio до функціональної відповідності специфікації, що входить до основного коду, та покращують експлуатаційну ефективність у сценаріях з багатокористувацькими шлюзами.
Покращення ambient режиму
Декілька ambient функцій потрапили у 1.30:
- Підтримка CIDR адрес у
ServiceEntry. РесурсиServiceEntryтепер можуть використовувати CIDR адреси для точок доступу, вмикаючи ambient маршрутизацію для діапазонів IP без перерахування окремих робочих навантажень. - Опціональний синтез XFCC на waypoints. З анотацією
ambient.istio.io/xfcc-include-client-identity: "true"на waypointGateway, waypoint синтезуєx-forwarded-client-certз SPIFFE ідентичності вихідного робочого навантаження, наданої ztunnel, щоб upstream застосунки могли бачити початкового клієнта. - Налаштовуваний розмір вікна HBONE через
PILOT_HBONE_INITIAL_STREAM_WINDOW_SIZEтаPILOT_HBONE_INITIAL_CONNECTION_WINDOW_SIZE, корисне для тюнінгу HBONE CONNECT кластерів для high-throughput ambient робочих навантажень. - Метрики Tokio runtime у ztunnel для чіткішої видимості ресурсів в кожному екземплярі.
- Новий посібник міграції sidecar-to-ambient. Покроковий посібник для міграції поточної, заснованої на sidecar mesh до ambient режиму, що охоплює встановлення ambient компонентів, міграцію політик та per-namespace увімкнення. Міграція розроблена як поступова та реверсивна, sidecar та ambient робочі навантаження можуть співіснувати під час процесу.
Додавання до управління трафіком
- Анотація розподілу трафіку на рівні namespace. Сервіси наслідують розподіл трафіку з анотації namespace, коли не встановлено явно на сервісі, зменшуючи per-service boilerplate.
- Анотація
istio.io/connect-strategyнаServiceEntryз режимомRACE_FIRST_TCP_CONNECT, корисна, коли DNS повертає кілька A записів і клієнт повинен обрати перший ендпоінт, що успішно завершує TCP connect. - DNS upstream timeout тепер налаштовується через
DNS_FORWARD_TIMEOUT, зі збереженням стандартного поточного значення5s. - Підтримка failover priority для DNS кластерів.
- Кілька CUSTOM провайдерів авторизації на робоче навантаження, вмикаючи різні схеми автентифікації (OAuth, LDAP, API keys) на різних API шляхах.
TrafficExtensionAPI, єдиний уніфікований API для конфігурування Wasm та Lua розширень на Envoy-базованих sidecar, шлюзах та waypoints, що замінюєWasmPluginяк основний механізм розширюваності проксі.
Підтримка Helm v4
Istio 1.30 додає підтримку Helm v4 (server-side apply). Давнє питання з володінням полем веб-хука failurePolicy під час оновлень також вирішено. Користувачі, що використовують Helm v4, повинні оновлюватися гладко без попередніх обхідних шляхів.
Безпека
- Автентифікація debug точок доступу посилена. XDS debug точки доступу (
syncz,config_dump) на порту 15010 тепер вимагають автентифікації, колиENABLE_DEBUG_ENDPOINT_AUTH=true(стандартно). Нове налаштуванняDEBUG_ENDPOINT_AUTH_ALLOWED_NAMESPACESдозволяє операторам дозволити конкретні простори імен поза системним. Див. примітки до оновлення для деталей кардинальних змін. - Прапорець мінімальної версії TLS для
pilot-discovery(--tls-min-version), що дозволяє операторам підняти планку для control-plane TLS. - Стандартний реєстр для Istio образів тепер
registry.istio.io. Попередній реєстр залишається доступним, але нові інсталяції типово використовують нове розташування.
Встановлення та робота
- Налаштовувані перевизначення портів для сервісу network gateway через
networkGatewayPortsHelm values, плюс валідація шаблону для раннього збою, колиservice.portsпорожній іnetworkGatewayне встановлено. - Стан статусу
WaypointBoundна ресурсахWorkloadEntry, що звітує, чи кожне робоче навантаження зараз привʼязане до waypoint. - Поля
dnsPolicyтаdnsConfigна Helm чарті ztunnel для середовищ з нестандартним DNS. useAppArmorAnnotationу Helm чарті istio-cni, стандартноtrue.global.enableReaderRBAC(стандартноtrue) контролює встановлення reader RBAC.
Телеметрія
- Збагачення атрибутів сервісу тепер слідує OpenTelemetry семантичним домовленостям, включаючи підтримку
app.kubernetes.io/nameтаservice.istio.io/canonical-name. - Нове поле
disableContextPropagationу Telemetry Tracing API, корисне для середовищ, де Istio не повинен поширювати контекст трасування. - Ztunnel Grafana dashboard додає панель Resource Usage для активних TCP зʼєднань, відкритих файлових дескрипторів та відкритих сокетів на екземпляр.
І ще багато іншого
- Вдосконалення istioctl, зокрема впровадження параметра
--tls-min-version, виправлення сортування у вихідних даних про з’єднання, образ istioctl без дистрибутива та вдосконалення командиztunnel-config - Вдосконалення CNI: виправлення kubelet probe для подів AWS EKS у середовищі ambient, що використовують групи безпеки для подів (гілка ENI), обмежене параметром
AMBIENT_ENABLE_AWS_BRANCH_ENI_PROBE(стандартно увімкнено); перевірка вхідних даних дляexcludeInterfaces; налаштування узгодження - Wasm: налаштовуване обмеження розміру бінарного файлу, налаштовуване обмеження розпакування gzip, захист від SSRF під час завантаження Wasm
- Multicluster: підтримка завантаження віддалених ресурсів
Secretіз локального шляху файлової системи
Про це та інше читайте в повних примітках до релізу.
Оновлення до 1.30
Ми хотіли б почути вашу думку щодо вашого досвіду оновлення до Istio 1.30. Ви можете надати відгук у каналі #release-1_30 у нашому Slack робочому просторі.
Хотіли б ви безпосередньо внести свій внесок у Istio? Знайдіть і приєднайтеся до однієї з наших робочих груп і допоможіть нам стати кращими.