ansible_traefikee
Traefikee
Установка и настройка кластера TraefikEE на своём сервере.
Переменные роли
Из умолчаний (пропускаем скучные вещи, смотрите файл для тонкой настройки, такой как путь установки, имя сервиса systemd, командные строки запуска и т.д.):
# Названия групп в инвентаре для контроллеров и прокси
traefikee_controller_group: traefikee_controller
traefikee_proxy_group: traefikee_proxy
# Эти параметры устанавливаются в true только при установке кластера.
traefikee_install: false # true для установки бинарных файлов traefikee
traefikee_configure: false # true для настройки и запуска сервисов systemd
# Динамическая конфигурация
# каждая запись — это конфигурационный файл. Если конфигурация равна false
# файл конфигурации удаляется
#
# пример:
# traefikee_cluster_dynamic_config:
# my_site:
# http:
# routers:
# my-site-router:
# rule: "Host('www.example.org')"
# entryPoints:
# - https
# service: site
# services:
# site:
# loadBalancer:
# servers:
# - url: "http://10.0.0.42:8000"
# my_old_site: null
traefikee_cluster_dynamic_config: {}
# Получите лицензионный ключ, связавшись с торговой командой Containous
traefikee_license_key: ""
# информация о загрузке бинарных файлов
traefikee_version: 2.0.2
traefikee_arch: linux_amd64
# При запуске traefikee обращается за проверкой лицензии. Это добавляется как
# переменные окружения сервиса systemd.
traefikee_http_proxy: ""
traefikee_https_proxy: "{{ traefikee_http_proxy }}"
# Добавьте дополнительные переменные окружения здесь.
# Например, для конфигурации Lego (https://docs.traefik.io/https/acme/):
# traefikee_environment_extra: |
# OVH_ENDPOINT=ovh-eu
# OVH_APPLICATION_KEY=123456
# OVH_APPLICATION_SECRET=123456
# OVH_CONSUMER_KEY=abcdef1234
traefikee_environment_extra: ""
# Статическая конфигурация является точной копией этого отображения
traefikee_cluster_config:
entryPoints:
http:
address: ":80"
https:
address: ":443"
providers:
# этот провайдер необходим, если хотите использовать traefikee_cluster_dynamic_config
file:
directory: "{{ traefikee_cluster_dynamic_config_dir }}"
watch: true
Пример плейбука
Учитывая этот инвентарь:
all:
children:
traefikee:
vars:
# TODO: В данный момент это жестко закодировано, нужно получить это из фактов
traefikee_controller_listen_address: 10.108.0.18
# очевидно, это должно быть сохранено в хранилище
traefikee_license_key: !vault |
**********
traefikee_http_proxy: http://mysquid:3128
children:
traefikee_controller:
hosts:
traefik-ctl-01.example.net:
traefikee_proxy:
hosts:
traefik-proxy-01.example.net:
traefik-proxy-02.example.net:
Установка и настройка кластера
- hosts: traefikee
become: yes
environment:
# эти параметры необходимы, так как процесс установки требует доступа в интернет
http_proxy: http://mysquid:3128
https_proxy: http://mysquid:3128
vars:
traefikee_install: yes
traefikee_configure: yes
roles:
- traefikee
Обновление динамической конфигурации
Обратите внимание, что старая конфигурация remove_me
удалена, а my_site
создана или обновлена.
- hosts: traefikee
become: yes
vars:
traefikee_cluster_dynamic_config:
remove_me: null
my_site:
http:
routers:
my-site-router:
rule: "Host('www.example.org')"
entryPoints:
- http
service: site
services:
site:
loadBalancer:
servers:
- url: "http://10.0.0.42:8000"
roles:
- traefikee
Лицензия
© 2020 – Kosc Telecom
Распространяется на условиях GPLV3
Установить
ansible-galaxy install kosctelecom/ansible-traefikee
Лицензия
Unknown
Загрузки
3908
Владелец