geerlingguy.haproxy
Rol de Ansible: HAProxy
Instala HAProxy en servidores Linux RedHat/CentOS y Debian/Ubuntu.
Nota: Este rol oficialmente soporta las versiones de HAProxy 1.4 o 1.5. Las versiones futuras pueden requerir algunos cambios.
Requisitos
Ninguno.
Variables del Rol
Las variables disponibles se enumeran a continuación, junto con los valores predeterminados (ver defaults/main.yml
):
haproxy_socket: /var/lib/haproxy/stats
El socket a través del cual HAProxy puede comunicarse (para fines administrativos o estadísticas). Para deshabilitar/remover esta directiva, establece haproxy_socket: ''
(una cadena vacía).
haproxy_chroot: /var/lib/haproxy
El directorio de la cárcel donde se realizará chroot() antes de reducir privilegios. Para deshabilitar/remover esta directiva, establece haproxy_chroot: ''
(una cadena vacía). ¡Cambia esto solo si sabes lo que estás haciendo!
haproxy_user: haproxy
haproxy_group: haproxy
El usuario y el grupo bajo los cuales debe ejecutarse HAProxy. ¡Cambia esto solo si sabes lo que estás haciendo!
haproxy_frontend_name: 'hafrontend'
haproxy_frontend_bind_address: '*'
haproxy_frontend_port: 80
haproxy_frontend_mode: 'http'
Directivas de configuración del frontend de HAProxy.
haproxy_backend_name: 'habackend'
haproxy_backend_mode: 'http'
haproxy_backend_balance_method: 'roundrobin'
haproxy_backend_httpchk: 'HEAD / HTTP/1.1\r\nHost:localhost'
Directivas de configuración del backend de HAProxy.
haproxy_backend_servers:
- name: app1
address: 192.168.0.1:80
- name: app2
address: 192.168.0.2:80
Una lista de servidores backend (nombre y dirección) a los que HAProxy distribuirá las solicitudes.
haproxy_connect_timeout: 5000
haproxy_client_timeout: 50000
haproxy_server_timeout: 50000
Configuraciones de tiempo de espera predeterminadas de HAProxy.
haproxy_global_vars:
- 'ssl-default-bind-ciphers ABCD+KLMJ:...'
- 'ssl-default-bind-options no-sslv3'
Una lista de variables globales adicionales para agregar a la sección de configuración global dentro de haproxy.cfg
.
haproxy_template: haproxy.cfg.j2
Usa esta variable para sobrescribir la plantilla de configuración utilizada por este rol. Copia el archivo de plantilla de la carpeta templates
de este rol a la carpeta templates
de tu propio playbook para sobrescribir.
Dependencias
Ninguna.
Ejemplo de Playbook
- hosts: balancer
sudo: yes
roles:
- { role: geerlingguy.haproxy }
Licencia
MIT / BSD
Información del Autor
Este rol fue creado en 2015 por Jeff Geerling, autor de Ansible for DevOps.
HAProxy installation and configuration.
ansible-galaxy install geerlingguy.haproxy