emmetog.haproxy
Ansibleロール: HAProxy
RedHat/CentOSおよびDebian/UbuntuのLinuxサーバーにHAProxyをインストールします。
注意: このロールはHAProxyのバージョン1.4または1.5を公式にサポートしています。将来のバージョンでは、いくつかの改修が必要になるかもしれません。
注意: このロールはgeerlingguy/ansible-role-haproxyをベースにしており、設定をより柔軟にするためにいくつかの調整が加えられています。
要件
特になし。
ロール変数
利用可能な変数は以下にリストされています。デフォルト値も含みます(defaults/main.yml
を参照):
haproxy_sockets:
- "/var/lib/haproxy/stats level admin"
HAProxyが管理目的や統計のために通信できるソケットです。この指示を無効にするには、haproxy_sockets: []
(空の配列)に設定します。
haproxy_chroot: /var/lib/haproxy
特権を落とす前にchroot()を実行するための監獄ディレクトリです。この指示を無効にするには、haproxy_chroot: ''
(空の文字列)に設定します。これを変更するのは、よく分かっている場合のみ行ってください!
haproxy_user: haproxy
haproxy_group: haproxy
HAProxyが実行されるユーザーとグループです。これを変更するのは、よく分かっている場合のみ行ってください!
haproxy_log_destination: /dev/log
ログの出力先で、通常はデフォルト値を変更する必要はありません。
haproxy_backend_timeout: 50000
バックエンドサーバーが完全に応答するまでのタイムアウト(ミリ秒単位)です。HAProxyは、クライアントタイムアウトも同じであることを推奨しています。このため、この値はサーバーとクライアントのタイムアウトの両方に使用されます。
haproxy_defaults: []
# - "option forwardfor"
"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"
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"
HAProxyのバックエンド設定指示。
haproxy_global_vars:
- 'ssl-default-bind-ciphers ABCD+KLMJ:...'
- 'ssl-default-bind-options no-sslv3'
haproxy.cfg
内のグローバル構成セクションに追加する追加のグローバル変数のリスト。
haproxy_restarted_status: restarted
このロールがいくつかの設定を変更するときに、haproxyサービスが持つべきステータス。
依存関係
特になし。
サンプルプレイブック
- hosts: balancer
sudo: yes
roles:
- { role: geerlingguy.haproxy }
ライセンス
MIT / BSD
作成者情報
このロールは、Jeff Geerlingによって2015年に最初に作成されました。彼はAnsible for DevOpsの著者です。このフォークはEmmet O'Gradyによってメンテナンスされています。
HAProxy installation and configuration.
ansible-galaxy install emmetog.haproxy