-
Notifications
You must be signed in to change notification settings - Fork 123
Description
WIth Docker 1.12, the way Swarm works will change quite a lot (and will look a lot more like Kubernetes), meaning services can be exposed on ports on all Swarm nodes and load balanced internally by Docker using a virtual IP or DNS round robin. As such, Interlock would no longer have to load balance across containers, but across physical swarm nodes.
For example, if you had 3 swarm nodes, A, B and C, and a service which is running on nodes A and C and assigned node port 30000, this would be accessible via any of the 3 swarm nodes on port 30000 regardless of whether the service is running on that machine and automatically load balanced between the 2 running containers.
Interlock could watch the event stream and all labelled services and create HAProxy/Nginx config to load balance across nodes A B and C to port 30000 using the hostname in the label.
Not sure if there are more things to take into consideration here, or if this is the job for another tool.