lisael.ansible_traefikee

Traefikee

Installer et configurer un cluster TraefikEE sur site

Variables de Rôle

À partir des valeurs par défaut (en ignorant les éléments ennuyeux, voir le fichier pour des ajustements fins comme le chemin d'installation, le nom du service systemd, les lignes de commande au démarrage...) :


# Nom des groupes dans l'inventaire pour les contrôleurs et les proxy
traefikee_controller_group: traefikee_controller
traefikee_proxy_group: traefikee_proxy

# Ceux-ci sont définis sur true uniquement lors de l'installation du cluster.
traefikee_install: false  # true pour installer les binaires traefikee
traefikee_configure: false  # true pour configurer et démarrer les services systemd

# Configuration dynamique
# Chaque entrée est un fichier de configuration. Si la configuration est évaluée à false,
# le fichier de configuration est supprimé
#
# exemple :

# 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: {}

# Obtenez une clé de licence en contactant l'équipe commerciale de Containous
traefikee_license_key: ""

# Informations de téléchargement des binaires
traefikee_version: 2.0.2
traefikee_arch: linux_amd64

# Au démarrage, traefikee vérifie sa licence. Cela est ajouté
# comme variables d'environnement de service systemd.
traefikee_http_proxy: ""
traefikee_https_proxy: "{{ traefikee_http_proxy }}"

# Ajoutez des variables d'environnement supplémentaires ici.
# par exemple, pour la configuration de 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: ""

# La configuration statique est une copie verbatim de cette mappage
traefikee_cluster_config:
  entryPoints:
    http:
      address: ":80"
    https:
      address: ":443"
  providers:
    # ce fournisseur est requis si l'on souhaite utiliser traefikee_cluster_dynamic_config
    file:
      directory: "{{ traefikee_cluster_dynamic_config_dir }}"
      watch: true

Exemple de Playbook

Étant donné cet inventaire :

all:
  children:
    traefikee:
      vars:
        # TODO : À l'heure actuelle, ceci est codé en dur, nous devons l'obtenir à partir des faits 
        traefikee_controller_listen_address: 10.108.0.18
        # cela devrait être crypté
        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:

Installer et configurer le cluster

- hosts: traefikee
  become: yes
  environment:
    # ceux-ci sont nécessaires, car le processus d'installation accède à Internet
    http_proxy: http://mysquid:3128
    https_proxy: http://mysquid:3128
  vars:
    traefikee_install: yes
    traefikee_configure: yes
  roles:
    - traefikee

Mettre à jour la configuration dynamique

Notez que la vieille configuration remove_me est supprimée, tandis que my_site est créée ou mise à jour.

- 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

Licence

© 2020 – Kosc Telecom

Distribué sous les termes de la GPLV3

À propos du projet

Install and configure a TraefikEE on-prem cluster

Installer
ansible-galaxy install lisael.ansible_traefikee
Licence
Unknown
Téléchargements
3.9k
Propriétaire