Load balancing, overlays, and scheduling
In the last few sections, we looked at launching services and stacks. To access the applications we launched, we were able to use any of the host IP addresses in our cluster; how was this possible?
Ingress load balancing
Docker Swarm has an ingress load balancer built in, making it easy to distribute traffic to our public-facing containers.
This means that you can expose applications within your Swarm cluster to services—for example, an external load balancer such as Amazon Elastic Load Balancer (ELB)—knowing that your request will be routed to the correct container(s) no matter which host happens to be currently hosting it, as demonstrated by the following diagram:
This means that our application can be scaled up or down, fail, or be updated, all without the need to have the external load balancer reconfigured to talk to...