github.com/tmlbl/deis@v1.0.2/docs/managing_deis/configure-load-balancers.rst (about)

     1  :title: Configure Load Balancers
     2  :description: Configure load balancers for your Deis Cluster
     3  
     4  .. _configure-load-balancers:
     5  
     6  Configure Load Balancers
     7  ------------------------
     8  
     9  .. image:: DeisLoadBalancerDiagram.png
    10      :alt: Deis Load Balancer Diagram
    11  
    12  Deis includes multiple routers scheduled to the cluster as part of the router mesh.
    13  In the event of a host failure, these routers can move hosts.
    14  Therefore, it is recommended that you configure a load balancer
    15  to operate in front of the Deis cluster to serve application traffic.
    16  
    17  These ports need to be open on the load balancers:
    18  
    19  * 80 (for application traffic and for API calls to the controller)
    20  * 2222 (for traffic to the builder)
    21  
    22  If you want to configure SSL termination on your load balancer, see :ref:`ssl-endpoints`.
    23  
    24  A health check should be configured on the load balancer to send an HTTP request to /health-check at
    25  port 80 on all nodes in the Deis cluster. The health check endpoint returns an HTTP 200. This enables
    26  the load balancer to serve traffic to whichever hosts happen to be running the deis-router component
    27  at any moment.
    28  
    29  EC2
    30  ===
    31  
    32  The Deis provisioning scripts for EC2 automatically create an Elastic Load Balancer for your Deis
    33  cluster. However, ELBs on EC2 have a default timeout of 60 seconds, which will disrupt a ``git push``
    34  when using Deis. You should manually `increase this timeout`_ to 1200 seconds to match the timeout
    35  on the router and application unit files.
    36  
    37  Rackspace
    38  =========
    39  
    40  You'll need to create two load balancers on Rackspace, as follows:
    41  
    42  .. code-block:: text
    43  
    44      Load Balancer 1
    45        Port 80
    46        Protocol HTTP
    47      Health Monitoring -
    48        Monitor Type HTTP
    49        HTTP Path /health-check
    50  
    51      Load Balancer 2
    52        Virtual IP Shared VIP on Another Load Balancer (select Load Balancer 1)
    53        Port 2222
    54        Protocol TCP
    55  
    56  .. _`increase this timeout`: http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/config-idle-timeout.html
    57  
    58  Google Compute Engine
    59  =====================
    60  
    61  The provisioning instructions for `Google Compute Engine`_ include steps to create a load balancer.
    62  It is not possible to change the timeout of the load balancer in Google Compute Engine at the moment.
    63  
    64  .. _`Google Compute Engine`: https://github.com/deis/deis/tree/master/contrib/gce#readme