Комментарии 5
Envoy конфигурирует их так называемым xDS-протоколом, который разрабатывается отдельно от Envoy и позволяет конфигурировать блоки.
Это он сейчас развивается отдельно. А изначально он развивался в рамках Envoy. Идея сделать его Universal Data Plane появилась чуть позже.
Envoy, в отличие от nginx, не предназначен для раздачи статического контента.
Это так. Но тем не менее возможность такая есть, как описано здесь https://github.com/envoyproxy/envoy/issues/378#issuecomment-1728846036
И если очень надо, не очень сложно было бы написать своё расширение к Envoy.
Несмотря на популярность Envoy количество его мейнтейнеров очень ограничено. Они в большом дефиците. Доменируют среди них сотрудники Google, у которых свои приоритеты и OKR. Обычно, кто открывает issue, тот и закрывает их патчем. Основная задача мейнтейнера - убедиться, что патч надлежащего качества и хорошо вписывается в архитектуру. Исключения - security issues.
У структуры документации логика есть. БОльшая часть - авто-сгенерирована из коментариев к Protobuf-декларациям. Остальное - поэлементное описание расширений, поскольку практически весь функционал находится в расширениях, включая даже HTTP connection manager, который по сути тоже опциональный фильтр. Кстати, рекомендую делать свою сборку Envoy, убрав все ненужные расширения. Будет немножко быстрее и меньше footprint.
В порядке саморекламы: два года назад я был официальным мейнтейнером Envoy.
У структуры документации логика есть. БОльшая часть - авто-сгенерирована из коментариев к Protobuf-декларациям.
А есть ресурс с документацией для людей? Я много плакал, пока пытался понять как это использовать. После Envoy документация Nginx или Caddy кажется венцом эволюции. А то, что раздел Community на оф. сайте ведёт не на форум сообщества, а на список контрибуторов вообще вогнало меня в депрессию. Ну то есть изо всех щелей лезет "мы делали это не для людей, а для машин" ☹️
Наверно, у меня высокий болевой порог. Часто я имею дело с проектами, где единственная документация - это исходный код. В общем, другой документации у Envoy нет. С вопросами лучше идти в слак-канал или в гуглу-группу. В слаке отвечают обычно быстрее. Ссылки есть на главном README.md репозитория.
За проектом не стоит никакая организация, заинтересованная в продвижении Envoy как конечного продукта. CNCF помогает с инфраструктурой, но не оплачивает услуги tech-writer'а. Если есть желание помочь другим написанием внятной документации, то пул-реквесты приветствуются :)
SLA для триажа новой issue дежурным мейнтейнером - сутки. Это условие принятия в мейнтейнеры: работодатель мейнтейнера должен дать согласие частично освобождать мейнтейнера от основной работы на время дежурства.
В начале статьи увидел упоминание о Traefik, хотелось бы и с ним увидеть сравнение.
Envoy Proxy — один за всех Load Balancer