Document HAProxy setup to load balance the HTTP port
Change-Id: I4facf51bb77de4a363ee4a282b60b768a5184840
diff --git a/src/main/resources/Documentation/config.md b/src/main/resources/Documentation/config.md
index 9d2ee56..ea4c7ff 100644
--- a/src/main/resources/Documentation/config.md
+++ b/src/main/resources/Documentation/config.md
@@ -266,6 +266,59 @@
# ...
```
+### Same Host URLs and Load Balancing ###
+
+NOTE: Shared web sessions must be setup first.
+Accessing masters on different servers using the same host
+URL requires using a load balancer. By connecting to the
+masters through a load balancer, the users will see only one
+hostname (the load balancer's), and thus will have just one
+session. Any standard load balancer can be used.
+
+The load balancer's front-end http address should be made
+different from that of any master. Configure the load
+balancer's back-end with the http addresses of all the
+masters. To have the masters direct clients to connect to
+the load balancer's http address, add the following lines to
+each master's config, `<site>/etc/gerrit.config`:
+
+```
+ [gerrit]
+ canonicalWebUrl = http[s]://<ip>:<port>
+ # http address of the load balancer
+```
+
+Restart all servers for the config changes to take effect.
+
+A sample setup using HAProxy is given below:
+
+```
+ global
+ daemon
+ pidfile /var/run/haproxy.pid
+
+ defaults
+ mode http
+ timeout connect 5000ms
+ timeout client 50000ms
+ timeout server 50000ms
+
+ frontend http-in
+ bind <ip>:<http_port>
+ # NOTE: users should connect over http to
+ <ip>:<http_port>, which should be the same as the
+ gerrit.canonicalWebUrl parameter in the
+ 'gerrit.config' files
+ default_backend http-servers
+
+ backend http-servers
+ server server1 <server1_ip>:<server1_http_port>
+ server server2 <server2_ip>:<server2_http_port>
+```
+
+See [Using HAProxy](#HAProxy) for how to start and stop HAProxy.
+
+
SSH Access
----------