emmetog.haproxy
Rôle Ansible : HAProxy
Installe HAProxy sur des serveurs Linux RedHat/CentOS et Debian/Ubuntu.
Remarque : Ce rôle prend en charge officiellement les versions 1.4 ou 1.5 de HAProxy. Des versions futures peuvent nécessiter quelques ajustements.
Remarque : Ce rôle est basé sur le rôle geerlingguy/ansible-role-haproxy, avec quelques adaptations pour rendre la configuration plus flexible.
Exigences
Aucune.
Variables du rôle
Les variables disponibles sont listées ci-dessous, avec leurs valeurs par défaut (voir defaults/main.yml) :
haproxy_sockets:
    - "/var/lib/haproxy/stats level admin"
Les sockets par lesquels HAProxy peut communiquer (pour des fins administratives ou statistiques). Pour désactiver/retirer cette directive, définissez haproxy_sockets: [] (un tableau vide).
haproxy_chroot: /var/lib/haproxy
Le répertoire de prison où chroot() sera exécuté avant de réduire les privilèges. Pour désactiver/retirer cette directive, définissez haproxy_chroot: '' (une chaîne vide). Changez cela seulement si vous savez ce que vous faites !
haproxy_user: haproxy
haproxy_group: haproxy
L'utilisateur et le groupe sous lesquels HAProxy doit s'exécuter. Changez cela seulement si vous savez ce que vous faites !
haproxy_log_destination: /dev/log
La destination pour la journalisation, vous n'aurez généralement pas besoin de modifier cette valeur par défaut.
haproxy_backend_timeout: 50000
Le délai d'attente en ms pour que les serveurs backend répondent complètement. HAProxy recommande que le délai d'attente du client soit identique ; pour cette raison, cette valeur sera utilisée pour les délais d'attente tant pour le serveur que pour le client.
haproxy_defaults: []
  # - "option forwardfor"
  
Toute configuration qui doit être ajoutée à la section "defaults".
haproxy_frontend_servers: []
  # - name: http-in
  #   bind:
  #     - "*:80"
  #   extra_configs:
  #     - "acl host_bacon hdr(host) -i ilovebacon.com"
  #     - "use_backend bacon_cluster if host_bacon"
Directives de configuration du frontend HAProxy.
haproxy_backend_servers: []
  # - name: bacon_cluster
  #   balance_method: leastconn
  #   servers:
  #     - name: node1
  #       address: 10.0.0.1:8080
  #   extra_configs:
  #     - "option httpclose"
  #     - "cookie JSESSIONID prefix"
Directives de configuration du backend HAProxy.
haproxy_global_vars:
  - 'ssl-default-bind-ciphers ABCD+KLMJ:...'
  - 'ssl-default-bind-options no-sslv3'
Une liste de variables globales supplémentaires à ajouter à la section de configuration globale dans haproxy.cfg.
haproxy_restarted_status: restarted
Le statut que le service haproxy doit avoir lorsque ce rôle modifie une certaine configuration.
Dépendances
Aucune.
Exemple de Playbook
- hosts: balancer
  sudo: yes
  roles:
    - { role: geerlingguy.haproxy }
Licence
MIT / BSD
Informations sur l'auteur
Ce rôle a été créé à l'origine en 2015 par Jeff Geerling, auteur de Ansible for DevOps, ce fork est maintenu par Emmet O'Grady.
HAProxy installation and configuration.
ansible-galaxy install emmetog.haproxy