c71296175f
The XML root element of Docbook XML files should match the following format: <ELEMENT xmlns="http://docbook.org/ns/docbook" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:id="THE_XML_ID_OF_THE_ELEMENT"> Change-Id: I47786e5f70b64e1b14d1015ec5613a538ef8fc52
159 lines
5.0 KiB
XML
159 lines
5.0 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
||
<chapter xmlns="http://docbook.org/ns/docbook"
|
||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||
version="5.0"
|
||
xml:id="ha-aa-haproxy">
|
||
|
||
<title>HAproxy nodes</title>
|
||
|
||
<para>HAProxy is a very fast and reliable solution offering high availability, load balancing, and proxying
|
||
for TCP and HTTP-based applications. It is particularly suited for web sites crawling under very high loads
|
||
while needing persistence or Layer 7 processing. Supporting tens of thousands of connections is clearly
|
||
realistic with today’s hardware.</para>
|
||
<para>For installing HAproxy on your nodes, you should consider its <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://haproxy.1wt.eu/#docs">official documentation</link>.
|
||
Also, you have to consider that this service should not be a single point of failure, so you need at least two
|
||
nodes running HAproxy.</para>
|
||
<para>Here is an example for HAproxy configuration file:</para>
|
||
<programlisting>global
|
||
chroot /var/lib/haproxy
|
||
daemon
|
||
group haproxy
|
||
maxconn 4000
|
||
pidfile /var/run/haproxy.pid
|
||
user haproxy
|
||
|
||
defaults
|
||
log global
|
||
maxconn 8000
|
||
option redispatch
|
||
retries 3
|
||
timeout http-request 10s
|
||
timeout queue 1m
|
||
timeout connect 10s
|
||
timeout client 1m
|
||
timeout server 1m
|
||
timeout check 10s
|
||
|
||
listen dashboard_cluster
|
||
bind <Virtual IP>:443
|
||
balance source
|
||
option tcpka
|
||
option httpchk
|
||
option tcplog
|
||
server controller1 10.0.0.1:443 check inter 2000 rise 2 fall 5
|
||
server controller2 10.0.0.2:443 check inter 2000 rise 2 fall 5
|
||
|
||
listen galera_cluster
|
||
bind <Virtual IP>:3306
|
||
balance source
|
||
option httpchk
|
||
server controller1 10.0.0.4:3306 check port 9200 inter 2000 rise 2 fall 5
|
||
server controller2 10.0.0.5:3306 check port 9200 inter 2000 rise 2 fall 5
|
||
server controller3 10.0.0.6:3306 check port 9200 inter 2000 rise 2 fall 5
|
||
|
||
listen glance_api_cluster
|
||
bind <Virtual IP>:9292
|
||
balance source
|
||
option tcpka
|
||
option httpchk
|
||
option tcplog
|
||
server controller1 10.0.0.1:9292 check inter 2000 rise 2 fall 5
|
||
server controller2 10.0.0.2:9292 check inter 2000 rise 2 fall 5
|
||
|
||
listen glance_registry_cluster
|
||
bind <Virtual IP>:9191
|
||
balance source
|
||
option tcpka
|
||
option tcplog
|
||
server controller1 10.0.0.1:9191 check inter 2000 rise 2 fall 5
|
||
server controller2 10.0.0.2:9191 check inter 2000 rise 2 fall 5
|
||
|
||
listen keystone_admin_cluster
|
||
bind <Virtual IP>:35357
|
||
balance source
|
||
option tcpka
|
||
option httpchk
|
||
option tcplog
|
||
server controller1 10.0.0.1:35357 check inter 2000 rise 2 fall 5
|
||
server controller2 10.0.0.2.42:35357 check inter 2000 rise 2 fall 5
|
||
|
||
listen keystone_public_internal_cluster
|
||
bind <Virtual IP>:5000
|
||
balance source
|
||
option tcpka
|
||
option httpchk
|
||
option tcplog
|
||
server controller1 10.0.0.1:5000 check inter 2000 rise 2 fall 5
|
||
server controller2 10.0.0.2:5000 check inter 2000 rise 2 fall 5
|
||
|
||
listen nova_ec2_api_cluster
|
||
bind <Virtual IP>:8773
|
||
balance source
|
||
option tcpka
|
||
option tcplog
|
||
server controller1 10.0.0.1:8773 check inter 2000 rise 2 fall 5
|
||
server controller2 10.0.0.2:8773 check inter 2000 rise 2 fall 5
|
||
|
||
listen nova_compute_api_cluster
|
||
bind <Virtual IP>:8774
|
||
balance source
|
||
option tcpka
|
||
option httpchk
|
||
option tcplog
|
||
server controller1 10.0.0.1:8774 check inter 2000 rise 2 fall 5
|
||
server controller2 10.0.0.2:8774 check inter 2000 rise 2 fall 5
|
||
|
||
listen nova_metadata_api_cluster
|
||
bind <Virtual IP>:8775
|
||
balance source
|
||
option tcpka
|
||
option tcplog
|
||
server controller1 10.0.0.1:8775 check inter 2000 rise 2 fall 5
|
||
server controller2 10.0.0.2:8775 check inter 2000 rise 2 fall 5
|
||
|
||
listen cinder_api_cluster
|
||
bind <Virtual IP>:8776
|
||
balance source
|
||
option tcpka
|
||
option httpchk
|
||
option tcplog
|
||
server controller1 10.0.0.1:8776 check inter 2000 rise 2 fall 5
|
||
server controller2 10.0.0.2:8776 check inter 2000 rise 2 fall 5
|
||
|
||
listen ceilometer_api_cluster
|
||
bind <Virtual IP>:8777
|
||
balance source
|
||
option tcpka
|
||
option httpchk
|
||
option tcplog
|
||
server controller1 10.0.0.1:8774 check inter 2000 rise 2 fall 5
|
||
server controller2 10.0.0.2:8774 check inter 2000 rise 2 fall 5
|
||
|
||
listen spice_cluster
|
||
bind <Virtual IP>:6082
|
||
balance source
|
||
option tcpka
|
||
option tcplog
|
||
server controller1 10.0.0.1:6080 check inter 2000 rise 2 fall 5
|
||
server controller2 10.0.0.2:6080 check inter 2000 rise 2 fall 5
|
||
|
||
listen neutron_api_cluster
|
||
bind <Virtual IP>:9696
|
||
balance source
|
||
option tcpka
|
||
option httpchk
|
||
option tcplog
|
||
server controller1 10.0.0.1:9696 check inter 2000 rise 2 fall 5
|
||
server controller2 10.0.0.2:9696 check inter 2000 rise 2 fall 5
|
||
|
||
listen swift_proxy_cluster
|
||
bind <Virtual IP>:8080
|
||
balance source
|
||
option tcplog
|
||
option tcpka
|
||
server controller1 10.0.0.1:8080 check inter 2000 rise 2 fall 5
|
||
server controller2 10.0.0.2:8080 check inter 2000 rise 2 fall 5</programlisting>
|
||
<para>After each change of this file, you should restart HAproxy.</para>
|
||
</chapter>
|