主页 > 知识库 > docker swarm外部验证负载均衡时不生效的解决方案

docker swarm外部验证负载均衡时不生效的解决方案

热门标签:400电话办理介绍信 10086外包用的什么外呼系统 丽江真人语音电话外呼系统 上海申请高400开头的电话 河南防封号电销机器人是什么 怎么找到没有地图标注的店 宿城区电话机器人找哪家 福州企业电销机器人排名 打400电话怎么办理收费

问题描述

我在本地创建了3个装了centos7的虚拟机, 并初始化了swarm集群, 即1个manager节点, 2个worker节点; 三台机子的ip分别是 192.168.124.8 - (manager节点), 192.168.124.9 - (worker节点), 192.168.124.10 - (worker节点)

[root@localhost ~]# docker node ls
ID                            HOSTNAME                STATUS              AVAILABILITY        MANAGER STATUS      ENGINE VERSION
j0f4up8v7epacp3vceby4exsz     localhost.localdomain   Ready               Active                                  19.03.13
qeeqc10gl9e56w61pajjqle08     localhost.localdomain   Ready               Active                                  19.03.13
r5sg5m9dkwcu76t56hg0vu29t *   localhost.localdomain   Ready               Active              Leader              19.03.14

然后我通过下面的命令在swarm集群上起了一个服务

docker service create --name test-vote --replicas 2 --constraint node.role==worker --publish 8080:80  registry.cn-hangzhou.aliyuncs.com/anoy/vote

直接curl 工作者节点ip:端口 是可以拿到响应的, 但是返回的containerId一直不变, 并且如果直接访问manager节点的话是拿不到响应的, 似乎是负载均衡没有生效!

解决

经过一番搜索, 在stack overflow上找到了答案, https://stackoverflow.com/questions/48360577/docker-swarm-mode-routing-mesh-not-working

原来是防火墙的问题, 按照文档的说法, 要让 swarm mode routing mesh 生效的话, 在初始化swarm集群前必须开放7946tcp/udp端口, 4789udp端口, https://docs.docker.com/engine/swarm/ingress/

所以如果是centos可以用下面的脚本开放端口, swarm集群里的每个主机都需要开放, 图方便这两个端口的tcp和udp都开放了; 开放完端口后还需要重启一下机器

firewall-cmd --permanent --zone=public --add-port=4789/tcp && \

firewall-cmd --permanent --zone=public --add-port=7946/tcp && \

firewall-cmd --permanent --zone=public --add-port=4789/udp && \

firewall-cmd --permanent --zone=public --add-port=7946/udp  && \

firewall-cmd --reload && \

# 重启
sudo reboot

到此这篇关于docker swarm外部验证负载均衡时不生效的文章就介绍到这了,更多相关docker swarm负载均衡内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

标签:荆门 遵义 运城 面试通知 陇南 连云港 朝阳 鸡西

巨人网络通讯声明:本文标题《docker swarm外部验证负载均衡时不生效的解决方案》,本文关键词  docker,swarm,外部,验证,负载,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《docker swarm外部验证负载均衡时不生效的解决方案》相关的同类信息!
  • 本页收集关于docker swarm外部验证负载均衡时不生效的解决方案的相关信息资讯供网民参考!
  • 推荐文章