docker swarm 路由网格

  • A+
所属分类:容器
又拍云upyun

使用swarm模式路由网格

  • swarm模式可以很容易的将服务端口发布到外部。
  • 所有节点都参入到ingress路由网格。
  • 路由网格使得集群中每个节点都能够接收集群中已发布的服务端口的连接,即使节点上没有运行该任务。
  • 路由网格将所有传入请求路由到发布端口的可用节点的可用容器上。

为了在集群中使用ingress网络,在启用swarm模式之前,集群节点之间需要开放下面端口:

  • 7946 TCP/UDP 用于容器网络发现
  • 4789 UDP 用于容器ingress网络

使用下面的命令来发布已有的服务端口

  • <TARGET-PORT> 是容器监听的端口。
  • <PUBLISHED-PORT> 是集群使服务可用的端口。

当访问任何节点上的8080端口时,集群负载均衡将请求转发到活动的容器。

路由网格将发布的端口监听在节点的任何IP地址上。对于外部可路由IP地址,端口可用从主机外部使用。对于所有其他IP地址,仅可在主机内部访问。

docker

  • <TARGET-PORT> 来自容器。
  • <PUBLISHED-PORT> 节点监听服务请求。

配置外部负载均衡

可用配置外部负载均衡将请求路由到集群服务。例如,配置haproxy将请求到发布8080端口的nginx服务。 docker

可用配置负载均衡来平衡集群中的每个节点的请求,即使节点上没有该任务。

当访问haproxy的80端口时,会将请求转发到集群中的节点。集群路由网络将请求路由到活动的任务。由于任何原因需要将任务分配到不同的节点,无需更改负载均衡的配置。

weinxin
微信公众号
扫一扫关注运维生存时间公众号,获取最新技术文章~
默北

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: