rhtconsulting.haproxy

haproxy

Rola Ansible do instalacji i konfiguracji HAProxy dla jednej lub więcej aplikacji równoważących obciążenie.

Ta rola zakłada, że użytkownik powinien skupić się na konfigurowaniu aplikacji równoważących obciążenie, a nie na konfigurowaniu serwerów frontendowych i backendowych w HAProxy. Dlatego korzystanie z tej roli opiera się na tym, że użytkownik określa aplikacje, które chce zrównoważyć obciążenie, a rola zajmuje się konfiguracją serwerów frontendowych i backendowych HAProxy.

Wymagania

Wymagania, aby ta rola działała.

Pakiety

Pakiety, które muszą być dostępne do zainstalowania przez rolę:

  • haproxy

Usługi

Usługi, które muszą być włączone, aby rola mogła je skonfigurować:

  • firewalld

Zmienne Roli

Informacje o oczekiwanych parametrach roli.

parametr wymagane domyślne opcje komentarze
haproxy_applications tak Lista hashy definiujących aplikacje do równoważenia obciążenia

haproxy_applications

Parametr haproxy_applications to lista hashy definiujących aplikacje do równoważenia obciążenia. Każdy element na liście może zawierać następujące parametry.

parametr wymagane domyślne opcje komentarze
name tak Nazwa aplikacji. Używana do definiowania serwerów frontendowych i backendowych. Powinna być opisowa, ponieważ wyświetli się w statystykach HAProxy. Musi pasować do /a-zA-Z0-9-_/
domain tak FQDN, który będzie rozwiązywał się do serwera(ów) HAProxy, aby zrównoważyć serwery. Może to być po prostu prosty FQDN lub wyrażenie regex do dopasowania domeny.
domain_is_regex nie false true, false true, jeśli podany domain jest wyrażeniem regex, false, aby traktować jako prosty FQDN.
expose_http nie false true, false true, aby udostępnić tę aplikację na http, false, aby nie udostępniać na http.
expose_https nie false true, false true, aby udostępnić tę aplikację na https, false, aby nie udostępniać na https.
redirect_http_to_https nie false true, false true, aby automatycznie przekierować http na https, false, aby nie przekierowywać.
servers tak Lista hashy definiująca serwery do równoważenia obciążenia.

serwery

Każdy element na liście haproxy_applications musi zawierać klucz servers, który jest listą hashy definiujących serwery do równoważenia obciążenia dla danej aplikacji. Każdy element na liście może zawierać następujące parametry.

parametr wymagane domyślne opcje komentarze
name tak Nazwa używana do odniesienia się do serwera. Będzie wyświetlana w statystykach HAProxy. Musi pasować do /a-zA-Z0-9-_/
address tak FQDN lub IP serwera do równoważenia obciążenia.
port_http nie 80 Port serwera w address, który będzie równoważony, gdy expose_http wynosi true.
port_https nie 443 Port serwera w address, który będzie równoważony, gdy expose_https wynosi true.

Przykłady Playbooków

Równoważenie obciążenia Ansible Tower

- name: HAProxy
  hosts: haproxy
  roles:
    - role: haproxy
      haproxy_applications:
        - name: ansible-tower
          domain: tower.example.com
          expose_https: True
          redirect_http_to_https: True
          servers:
            - name: tower0002
              address: tower0002.example.com
            - name: tower0003
              address: tower0003.example.com
            - name: tower0004
              address: tower0004.example.com

Równoważenie obciążenia dla OpenShift Container Platform (OCP) masterów i routerów

- name: HAProxy
  hosts: haproxy
  roles:
    - role: haproxy
      haproxy_applications:
        - name: ocp-admin
          domain: ocp.example.com
          expose_https: True
          redirect_http_to_https: True
          servers:
            - name: ocp0002-master
              address: ocp0002.example.com
            - name: ocp0003-master
              address: ocp0003.example.com
            - name: ocp0004-master
              address: ocp0004.example.com
        - name: ocp-router
          domain: .*.apps.example.com
          domain_is_regex: True
          expose_https: True
          expose_http: True
          redirect_http_to_https: False
          servers:
            - name: ocp0005-infra
              address: ocp0005.example.com
            - name: ocp0006-infra
              address: ocp0006.example.com
            - name: ocp0007-infra
              address: ocp0007.example.com

Informacje o autorze

O projekcie

Ansible role for installing and configuring HAProxy for one or many frontend and backend servers.

Zainstaluj
ansible-galaxy install rhtconsulting.haproxy
Licencja
apache-2.0
Pobrania
145.4k
Właściciel