Swarm模式内置DNS组件,可以自动为集群中的每个服务分配DNS记录。
Swarm manager使用内部负载均衡,根据服务的DNS名称在集群内的服务之间分发请求。
Swarm manager使用 ingress load blancing暴露你想从外部访问集群提供的服务。
Swarm manager自动为服务分配一个范围30000-32767端口的Published Port,也可以为该服务指定一个Published Port。
ingress network是一个特殊的overlay网络,便于服务的节点直接负载均衡。当任何swarm节点在已发布的端口上接收到请求时,它将该请求转发给调用的IPVS模块,IPVS跟踪参与该服务的所有容器IP地址,选择其中一个,并通过ingress network将请求路由给它。
Docker Swarm 负载均衡试验测试
1、管理节点:创建一个测试容器my_web
docker service create --replicas 3 --network my-network --name my_web nginx