empty static

Релиз Angie 1.10.0: динамический Docker-прокси, ACME в stream и новинки Angie PRO

Angie автоматически проксирует Docker-контейнеры с поддержкой TLS, ACME, MPTCP и QUIC Angie — это современный форк nginx, развиваемый компанией Web Server LLC. С выходом версии 1.10.0 проект получил сразу несколько ключевых улучшений, включая автоматическое проксирование Docker-контейнеров, расширенную поддержку ACME и новые режимы балансировки в потоке. Одновременно была представлена и новая версия коммерческой редакции  Angie PRO 1.10.0.

Главное новшество Angie 1.10.0 — возможность динамического формирования upstream-групп на основе запущенных Docker или Podman контейнеров. Администратору достаточно указать путь к Docker API, задать фильтрующие метки, и Angie автоматически добавит нужные сервисы в конфигурацию, без необходимости её перезагрузки. События запуска и остановки контейнеров отслеживаются в реальном времени. Это позволяет создавать полностью автоматизированную схему балансировки для микросервисной архитектуры.

Дополнительное внимание уделено блоку автоматического управления TLS-сертификатами. Ранее мощный ACME-модуль поддерживал только HTTP, но теперь его возможности перенесены и в потоковый модуль stream. Это упрощает защиту нестандартных сервисов, работающих не по HTTP-протоколу, включая почтовые и собственные TCP/UDP решения. Кроме того, добавлен новый блок client, аналогичный server, но предназначенный для настройки исходящих подключений. Он позволяет точно задать параметры взаимодействия с ACME-сервером, Docker API и другими внешними сервисами.

Из проектов nginx и freenginx в Angie 1.10.0 были импортированы важные улучшения: поддержка Multipath TCP (MPTCP) в модулях http, stream и mail, а также обновления до функциональности nginx 1.27.5, включая контроль CUBIC-конгестии в соединениях QUIC. В отличие от nginx, Angie поддерживает QUIC не только для входящих, но и для исходящих соединений с бекендами.

Платная версия Angie PRO 1.10.0 получила заметные обновления в части кластеризации. Реализована внешняя привязка сессий с хранением данных в централизованном хранилище, что особенно важно для масштабируемых систем. Также в потоковом модуле появился новый режим переключения на резервные серверы: теперь возврат к основному backend происходит не мгновенно, а только после стабильной доступности.

Кроме того, была исправлена ошибка в статистике, из-за которой не учитывался простой серверов в режиме drain (по завершении обработки текущих соединений, но без новых подключений).

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