{"id":13655002,"url":"https://github.com/geerlingguy/ansible-role-haproxy","last_synced_at":"2025-10-07T04:33:32.496Z","repository":{"id":38038869,"uuid":"39286541","full_name":"geerlingguy/ansible-role-haproxy","owner":"geerlingguy","description":"Ansible Role - HAProxy","archived":false,"fork":false,"pushed_at":"2024-08-19T07:37:50.000Z","size":50,"stargazers_count":212,"open_issues_count":1,"forks_count":190,"subscribers_count":8,"default_branch":"master","last_synced_at":"2024-10-10T04:06:31.147Z","etag":null,"topics":["ansible","haproxy","load-balancer","performance","proxy","reverse-proxy","role","scalability","webserver"],"latest_commit_sha":null,"homepage":"https://galaxy.ansible.com/geerlingguy/haproxy/","language":"Jinja","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/geerlingguy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"geerlingguy","patreon":"geerlingguy"}},"created_at":"2015-07-18T04:27:59.000Z","updated_at":"2024-10-09T22:08:20.000Z","dependencies_parsed_at":"2023-01-24T12:45:37.216Z","dependency_job_id":"1dfb1178-051c-46a4-a9b0-16bc6288083f","html_url":"https://github.com/geerlingguy/ansible-role-haproxy","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/geerlingguy%2Fansible-role-haproxy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/geerlingguy%2Fansible-role-haproxy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/geerlingguy%2Fansible-role-haproxy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/geerlingguy%2Fansible-role-haproxy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/geerlingguy","download_url":"https://codeload.github.com/geerlingguy/ansible-role-haproxy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247299833,"owners_count":20916190,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","haproxy","load-balancer","performance","proxy","reverse-proxy","role","scalability","webserver"],"created_at":"2024-08-02T03:00:54.607Z","updated_at":"2025-10-07T04:33:27.449Z","avatar_url":"https://github.com/geerlingguy.png","language":"Jinja","funding_links":["https://github.com/sponsors/geerlingguy","https://patreon.com/geerlingguy"],"categories":["\u003ca id=\"d03d494700077f6a65092985c06bf8e8\"\u003e\u003c/a\u003e工具","webserver","Reverse Proxy"],"sub_categories":["\u003ca id=\"d3069cac6097830d12f5933c9c8b7a77\"\u003e\u003c/a\u003eHAProxy","Webservers"],"readme":"# Ansible Role: HAProxy\n\n[![CI](https://github.com/geerlingguy/ansible-role-haproxy/actions/workflows/ci.yml/badge.svg)](https://github.com/geerlingguy/ansible-role-haproxy/actions/workflows/ci.yml)\n\nInstalls HAProxy on RedHat/CentOS and Debian/Ubuntu Linux servers.\n\n**Note**: This role _officially_ supports HAProxy versions 1.4 or 1.5. Future versions may require some rework.\n\n## Requirements\n\nNone.\n\n## Role Variables\n\nAvailable variables are listed below, along with default values (see `defaults/main.yml`):\n\n```yaml\nhaproxy_socket: /var/lib/haproxy/stats\n```\n\nThe socket through which HAProxy can communicate (for admin purposes or statistics). To disable/remove this directive, set `haproxy_socket: ''` (an empty string).\n\n```yaml\nhaproxy_chroot: /var/lib/haproxy\n```\n\nThe jail directory where chroot() will be performed before dropping privileges. To disable/remove this directive, set `haproxy_chroot: ''` (an empty string). Only change this if you know what you're doing!\n\n```yaml\nhaproxy_user: haproxy\nhaproxy_group: haproxy\n```\n\nThe user and group under which HAProxy should run. Only change this if you know what you're doing!\n\n```yaml\nhaproxy_frontend_name: 'hafrontend'\nhaproxy_frontend_bind_address: '*'\nhaproxy_frontend_port: 80\nhaproxy_frontend_mode: 'http'\n```\n\nHAProxy frontend configuration directives.\n\n```yaml\nhaproxy_backend_name: 'habackend'\nhaproxy_backend_mode: 'http'\nhaproxy_backend_balance_method: 'roundrobin'\nhaproxy_backend_httpchk: 'HEAD / HTTP/1.1\\r\\nHost:localhost'\n```\n\nHAProxy backend configuration directives.\n\n```yaml\nhaproxy_backend_servers:\n  - name: app1\n    address: 192.168.0.1:80\n  - name: app2\n    address: 192.168.0.2:80\n```\n\nA list of backend servers (name and address) to which HAProxy will distribute requests.\n\n```yaml\nhaproxy_connect_timeout: 5000\nhaproxy_client_timeout: 50000\nhaproxy_server_timeout: 50000\n```\n\nHAProxy default timeout configurations.\n\n```yaml\nhaproxy_global_vars:\n  - 'ssl-default-bind-ciphers ABCD+KLMJ:...'\n  - 'ssl-default-bind-options no-sslv3'\n```\n\nA list of extra global variables to add to the global configuration section inside `haproxy.cfg`.\n\n```yaml\nhaproxy_template: haproxy.cfg.j2\n```\n\nUse this variable to override the configuration template used by this role. Copy out the template file from this role's `templates` folder into your own playbook's `templates` folder to override.\n\n## Dependencies\n\nNone.\n\n## Example Playbook\n\n```yaml\n- hosts: balancer\n  sudo: yes\n  roles:\n    - { role: geerlingguy.haproxy }\n```\n\n## License\n\nMIT / BSD\n\n## Author Information\n\nThis role was created in 2015 by [Jeff Geerling](https://www.jeffgeerling.com/), author of [Ansible for DevOps](https://www.ansiblefordevops.com/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgeerlingguy%2Fansible-role-haproxy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgeerlingguy%2Fansible-role-haproxy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgeerlingguy%2Fansible-role-haproxy/lists"}