envoyproxy

Ansible Galaxy Lint Molecule CI/CD License

Роль Ansible для Envoy Proxy

Envoy Proxy — это мощный прокси-сервер для краевых и сервисных приложений, разработанный для облачных приложений. Это проект с хорошей репутацией в CNCF и имеет нативные интеграции с Jaeger для наблюдаемости, Prometheus для метрик и других инструментов.

Цель этой роли — помочь пользователям развертывать и настраивать базовую конфигурацию Envoy Proxy на виртуальных машинах и физических серверах как альтернативу обычным прокси-серверам и балансировщикам нагрузки.

Конфигурации Envoy Proxy НЕ будут включены здесь, так как они имеют дополнительный уровень сложности, который потребует коллекций Ansible или модуля.

Требования

Ansible

  • Эта роль разработана и протестирована с версиями Ansible, находящимися в поддерживаемом состоянии. Обратная совместимость не гарантируется.
  • Инструкции по установке Ansible можно найти на сайте Ansible.

Molecule

  • Для тестирования различных функциональностей роли используется Molecule версии 3.x.
  • Инструкции по установке Molecule можно найти на сайте Molecule.

Ansible Galaxy

Используйте команду ansible-galaxy install hugoprudente.envoyproxy, чтобы установить последнюю стабильную версию роли на вашу систему.

Git

Используйте команду git clone https://github.com/hugoprudente/ansible-role-envoyproxy.git hugoprudente.envoyproxy в директории roles/, чтобы получить последнюю версию роли с GitHub.

Платформы

Роль Envoy Proxy поддерживает:

Envoy Proxy

Роль Envoy Proxy работает над поддержкой всех платформ, поддерживаемых Envoy Proxy.

На данный момент я протестировал её на:

CentOS:
- 8
Ubuntu:
- focal (20.04)
Debian:
- buster (10)

Переменные роли

Эта роль имеет несколько переменных. Описания и значения по умолчанию для всех этих переменных можно найти в папке defaults/main/ в следующих файлах:

Название Описание
main.yml Переменные установки Envoy Proxy
systemd.yml Переменные установки для systemd
logrotate.yml Переменные установки для logrotate
cluster.yml Переменные установки кластера

Аналогично, описания и значения для предустановленных переменных можно найти в папке vars/ в следующих файлах:

Название Описание
main.yml Список поддерживаемых платформ и модулей Envoy Proxy

Примеры плейбуков

Рабочие примеры плейбуков можно найти в папке molecule/ в следующих файлах:

Название Описание
default/converge.yml Установка стандартной версии Envoy Proxy
container/converge.yml Установка контейнерной версии Envoy Proxy
source/converge.yml Установка Envoy Proxy из исходных кодов
cluster/converge.yml Установка кластерной версии Envoy Proxy (Primary/Primary) и (Active/Backup)
custom/converge.yml Установка конкретной версии Envoy Proxy с добавлением log rotate и пользовательским systemd

Лицензия

Лицензия Apache, версия 2.0

Информация об авторе

Хуго Пруденте

Установить
ansible-galaxy install hugoprudente/ansible-role-envoyproxy
Лицензия
apache-2.0
Загрузки
153
Владелец
Dev/Ops [SysAdmin & Software Engineer] from Brazil to Ireland