Новый релиз Traefik Proxy 3.7

Компания Traefik Labs выпустила Traefik Proxy 3.7 — новейшую версию своего прокси-сервера для облачных приложений с открытым исходным кодом.

Самым важным обновлением в этом выпуске является провайдер Ingress Nginx, который теперь готов к боевому использованию. Traefik Proxy 3.7 поддерживает более 85 широко используемых аннотаций Ingress NGINX, что позволяет многим существующим ресурсам Kubernetes Ingress работать с Traefik без изменения манифестов или аннотаций.

По данным Traefik Labs, набор поддерживаемых аннотаций охватывает более 90% реальных моделей использования, наблюдаемых в сотнях производственных кластеров. Список включает аутентификацию, аффинность сеансов, маршрутизацию и перенаправления, настройку прокси, балансировку нагрузки, ограничение скорости, канарные развертывания, пользовательские заголовки, пользовательские страницы ошибок, бэкэнды по умолчанию, контроль доступа и наблюдаемость.

В этом выпуске также представлена частичная поддержка часто используемых аннотаций фрагментов Ingress NGINX, таких как configuration-snippet, server-snippet и auth-snippet. Вместо вставки необработанной конфигурации NGINX, предоставленной пользователем, Traefik анализирует содержимое фрагмента, сопоставляет его с утвержденным списком поддерживаемых директив и отклоняет неподдерживаемый ввод.

Сертификаты TLS Traefik теперь доступны для просмотра в панели управления. Помимо улучшений для NGINX, Traefik Proxy 3.7 представляет новый вид сертификатов TLS в панели управления. Меню «Сертификаты» отображает активные сертификаты TLS, связанные с ними домены, даты истечения срока действия и точки привязки к маршрутизаторам HTTP и TCP.

Еще одно обновление позволяет подключать промежуточное ПО непосредственно к сервисам. Ранее промежуточное ПО Traefik подключалось только к маршрутизаторам или точкам входа. В версии 3.7 промежуточное ПО можно применять на уровне сервиса, что обеспечивает единообразную аутентификацию, ограничение скорости или другие функции на всех маршрутизаторах, нацеленных на один и тот же бэкэнд-сервис, без дублирования конфигурации.

Для пользователей Kubernetes Gateway API в Traefik Proxy 3.7 добавлена поддержка Gateway API v1.5.1. Это обновление позволяет прослушивателям Gateway ссылаться на несколько certificateRefs и выбирать подходящий сертификат с помощью SNI.

Также были расширены функции отказоустойчивости. Мидлвеар Retry теперь может повторять запросы на основе кодов статуса HTTP-ответов, с настраиваемыми таймаутами для каждой попытки и опциональной поддержкой неидемпотентных методов. Это позволяет Traefik повторять запросы, когда бэкенды возвращают такие ответы, как 502, 503 или 504.

Кроме того, служба Failover теперь может инициировать переключение на резервный Сервер на основе кодов статуса ответа. В сочетании с новой поддержкой переключения на резервный сервис в определении пользовательского ресурса TraefikService это позволяет определять конфигурации «синий-зеленый» и «активный-пассивный» непосредственно в Kubernetes с использованием модели CRD Traefik.

Дополнительные обновления включают поддержку хостов с подстановочными знаками в сопоставителях Host и HostSNI, настройку приоритета маршрутизации провайдеров, выбор точки входа для каждого Ingress для NGINX Ingress, новое промежуточное ПО encodedCharacters, поддержку фрагментированного TLS Client Hello, опцию ACME CertificateTimeout, поля журнала Kubernetes Ingress, настройку имени панели инструментов и поддержку Knative 1.20.

Ознакомьтесь с анонсом выпуска или посмотрите журнал изменений проекта на GitHub, чтобы увидеть полный список всех изменений.