spacepaste

  1.  
  2. global
  3. log /dev/log local0
  4. log /dev/log local1 notice
  5. chroot /var/lib/haproxy
  6. stats socket /run/haproxy/admin.sock mode 660 level admin
  7. stats timeout 30s
  8. maxconn 5000
  9. user haproxy
  10. group haproxy
  11. daemon
  12. ca-base /etc/ssl/certs
  13. crt-base /etc/ssl/private
  14. ssl-default-bind-ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS
  15. ssl-default-bind-options no-sslv3
  16. defaults
  17. log global
  18. mode http
  19. option tcpka
  20. option tcplog
  21. option dontlognull
  22. timeout connect 10s
  23. timeout client 60s
  24. timeout server 120s
  25. errorfile 400 /etc/haproxy/errors/400.http
  26. errorfile 403 /etc/haproxy/errors/403.http
  27. errorfile 408 /etc/haproxy/errors/408.http
  28. errorfile 500 /etc/haproxy/errors/500.http
  29. errorfile 502 /etc/haproxy/errors/502.http
  30. errorfile 503 /etc/haproxy/errors/503.http
  31. errorfile 504 /etc/haproxy/errors/504.http
  32. listen stats
  33. bind *:1993
  34. stats enable
  35. stats uri /stats
  36. stats auth root:{{ openstack_password }}
  37. stats refresh 30s
  38. stats show-node
  39. stats hide-version
  40. log global
  41. listen galera
  42. bind *:3306
  43. mode tcp
  44. balance first
  45. maxconn 2000
  46. option httpchk
  47. default-server check port 9200 inter 3s fall 1 rise 1
  48. {% for host in groups["controller"] %}
  49. server galera-{{ loop.index }} {{ hostvars[host]["ansible_default_ipv4"]["address"] }}:3306 check
  50. {% endfor %}
  51. listen glance_api
  52. bind *:9292
  53. balance first
  54. option httpchk
  55. option forwardfor
  56. default-server inter 3s fall 1 rise 1
  57. {% for host in groups["controller"] %}
  58. server controller-{{ loop.index }} {{ hostvars[host]["ansible_default_ipv4"]["address"] }}:9292 check
  59. {% endfor %}
  60. listen glance_registry
  61. bind *:9191
  62. balance first
  63. option httpchk
  64. option forwardfor
  65. http-check expect status 401
  66. default-server inter 3s fall 1 rise 1
  67. {% for host in groups["controller"] %}
  68. server controller-{{ loop.index }} {{ hostvars[host]["ansible_default_ipv4"]["address"] }}:9191 check
  69. {% endfor %}
  70. listen keystone_public_internal
  71. bind *:5000
  72. balance first
  73. option httpchk
  74. option forwardfor
  75. default-server inter 3s fall 1 rise 1
  76. {% for host in groups["controller"] %}
  77. server controller-{{ loop.index }} {{ hostvars[host]["ansible_default_ipv4"]["address"] }}:5000 check
  78. {% endfor %}
  79. listen nova_compute_api
  80. bind *:8774
  81. balance first
  82. option httpchk
  83. option forwardfor
  84. default-server inter 3s fall 1 rise 1
  85. {% for host in groups["controller"] %}
  86. server controller-{{ loop.index }} {{ hostvars[host]["ansible_default_ipv4"]["address"] }}:8774 check
  87. {% endfor %}
  88. listen nova_placement_api
  89. bind *:8778
  90. balance first
  91. option tcplog
  92. http-request del-header X-Forwarded-Proto
  93. default-server inter 3s fall 1 rise 1
  94. {% for host in groups["controller"] %}
  95. server controller-{{ loop.index }} {{ hostvars[host]["ansible_default_ipv4"]["address"] }}:8778 check
  96. {% endfor %}
  97. listen nova_metadata_api
  98. bind *:8775
  99. balance first
  100. option httpchk
  101. option forwardfor
  102. default-server inter 3s fall 1 rise 1
  103. {% for host in groups["controller"] %}
  104. server controller-{{ loop.index }} {{ hostvars[host]["ansible_default_ipv4"]["address"] }}:8775 check
  105. {% endfor %}
  106. listen nova_vncproxy
  107. bind *:6080
  108. balance first
  109. option forwardfor
  110. option httpchk GET /vnc_auto.html HTTP/1.1\r\nUser-Agent:\ curl/7.35.0\r\nAccept:\ */*
  111. default-server inter 3s fall 1 rise 1
  112. {% for host in groups["controller"] %}
  113. server controller-{{ loop.index }} {{ hostvars[host]["ansible_default_ipv4"]["address"] }}:6080 check
  114. {% endfor %}
  115. listen cinder_api
  116. bind *:8776
  117. balance first
  118. option httpchk
  119. option forwardfor
  120. default-server inter 3s fall 1 rise 1
  121. {% for host in groups["controller"] %}
  122. server controller-{{ loop.index }} {{ hostvars[host]["ansible_default_ipv4"]["address"] }}:8776 check
  123. {% endfor %}
  124. listen neutron_api
  125. bind *:9696
  126. balance first
  127. option httpchk
  128. option forwardfor
  129. default-server inter 3s fall 1 rise 1
  130. {% for host in groups["controller"] %}
  131. server controller-{{ loop.index }} {{ hostvars[host]["ansible_default_ipv4"]["address"] }}:9696 check
  132. {% endfor %}
  133. listen memcached
  134. bind *:11211
  135. balance first
  136. mode tcp
  137. default-server inter 3s fall 1 rise 1
  138. {% for host in groups["controller"] %}
  139. server controller-{{ loop.index }} {{ hostvars[host]["ansible_default_ipv4"]["address"] }}:11211 check
  140. {% endfor %}
  141. listen rabbitmq
  142. bind *:5672
  143. balance first
  144. mode tcp
  145. default-server inter 3s fall 1 rise 1
  146. {% for host in groups["controller"] %}
  147. server controller-{{ loop.index }} {{ hostvars[host]["ansible_default_ipv4"]["address"] }}:5672 check
  148. {% endfor %}
  149. listen rabbitmq:ui
  150. bind *:15672
  151. balance first
  152. option httpchk
  153. option forwardfor
  154. default-server inter 3s fall 1 rise 1
  155. {% for host in groups["controller"] %}
  156. server controller-{{ loop.index }} {{ hostvars[host]["ansible_default_ipv4"]["address"] }}:15672 check
  157. {% endfor %}
  158.