rds13 / ansible-haproxy

Installs and configures HAProxy

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

haproxy

Installs and configures HAProxy.

Versions

The current release is 1.5.0.

The next release is in development (Cf. the projects tab).

Features

  • Supports CentOS and Debian (Ubuntu should work)
  • Installs HAProxy from official repositories on Debian.
  • Installs HAProxy from EPEL repository on CentOS.
  • Tests via Molecule and Docker

Requirements

The python library jmespath is required on the control node.

Role Variables

  • haproxy_global

    Global HAProxy settings.

  • haproxy_defaults

    Default settings for frontends, backends, and listen proxies.

  • haproxy_resolvers

    A list of HAProxy resolvers.

  • haproxy_backends

    A list of HAProxy backends.

  • haproxy_frontends

    A list of HAProxy frontends.

  • haproxy_listen

    A list of listen proxies.

  • haproxy_logforward

    A list of log-forward proxies (Only for HAProxy version 2.3 and above).

See vars/main.yml for a complete list of configurable .

See the wiki for more details.

Example

- hosts: loadbalancers
  roles:
     - role: haproxy
       haproxy_frontends:
       - name: 'fe-mysupersite'
         ip: '123.123.123.120'
         port: '80'
         maxconn: '1000'
         default_backend: 'be-mysupersite'
       haproxy_backends:
       - name: 'be-mysupersite'
         description: 'mysupersite is really cool'
         servers:
           - name: 'be-mysupersite-01'
             ip: '192.168.1.100'
       log-forward:
          - name: 'my-syslog-lb'
            dgrambind: 
              - '127.0.0.1:514' # Listen on UDP IPv4
            log:
              - ip: '192.168.1.101'
                port: 5514
                sample_range: "1:2"
                facility: "local0 info"
              - ip: '192.168.1.102'
                port: 5514
                sample_range: "3:4"
                facility: "local0 info"

Testing

To test the role you first need to install Molecule with :

$ pip install molecule docker

If you encounter a problem while installing with pip, install python-dev

To run the tests, execute :

$ molecule test

License

Apache v2

Author Information

This role was created in 2014 by Pheromone - Pierre Paul Lefebvre (lefebvre@pheromone.ca).

This role was forked in 2019 by Deveryware.

The contributors list

About

Installs and configures HAProxy

License:Apache License 2.0


Languages

Language:Jinja 56.7%Language:Python 41.3%Language:Makefile 2.0%