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
(по завершении обработки текущих соединений, но без новых подключений).
Команда проекта пообещала вскоре опубликовать технический разбор на Хабре, а также раскрыть планы по следующим релизам.