当前位置: 首页 > 知识库问答 >
问题:

无法将节点加入docker swarm

公孙国兴
2023-03-14

我有两个服务器在Docker群,但当我需要添加第三个服务器-我得到的结果:

来自守护进程的错误响应:rpc错误:code=14 desc=grpc:连接不可用

一个网络中的所有服务器。

有什么问题吗?

共有3个答案

哈雅珺
2023-03-14

正如其他人指出的那样,关闭港口可能是一个原因。但我也发现了更多。

Docker的最新版本存在大量代理问题:

  • https://github.com/moby/moby/issues/34825
  • https://github.com/moby/moby/issues/34996
  • https://github.com/moby/moby/issues/35046
  • https://github.com/moby/moby/issues/35395

根据这一评论,修复程序“很可能”进入Docker版本17.11,并“考虑”加入17.09的补丁版本。

我的所有端口都已打开,上述链接中描述的NO_PROXYhack不起作用。

我尝试了17.05之间的所有Docker版本,一直到17.11.0-ce-rc3,构建5b4af4f,但没有成功,这让我怀疑罪魁祸首可能是最近升级的Vagrant(我正在使用2.0.1)和/或VirtualBox(使用5.1.30)。升级这两者中的任何一个通常会导致各种随机问题。但是,我没有降低这些家伙的等级,而是尝试升级我运行的流浪者箱。

在我的双机设置中,我将第一个节点的框切换到fso/artful64桌面,将第二个节点的框切换到fso/artful64(两个版本都2017-11-01)。令我惊讶的是,这使得Docker S186可以在版本17.10.0-ce17.11.0-ce-rc3上工作,构建5b4af4f。请注意,如果你想使用Ubuntu 17.10盒lol(可以手动修复),私有网络在Vagant2.0.1上被破坏。

司空温书
2023-03-14

从官方Docker群教程

Docker主机上必须打开以下端口。

TCP port 2377 for cluster management communications
TCP and UDP port 7946 for communication among nodes   
UDP port 4789 for overlay network traffic

要启用此端口,请在所有docker主机上运行以下命令。请按照digitalocen文章了解完整步骤。

firewall-cmd --add-port=2376/tcp --permanent
firewall-cmd --add-port=2377/tcp --permanent
firewall-cmd --add-port=7946/tcp --permanent
firewall-cmd --add-port=7946/udp --permanent
firewall-cmd --add-port=4789/udp --permanent
阳德润
2023-03-14

我认为这可能与防火墙有关。确保在第三个框上正确配置了端口。来自Docker文档:

主机之间的开放协议和端口以下端口必须可用。在某些系统上,这些端口默认是打开的。

用于集群管理通信的TCP端口2377用于节点间通信的TCP和UDP端口7946用于覆盖流量的UDP端口4789

 类似资料:
  • 我有3个虚拟机。它们都有docker 1.12,并且在centos7上运行。所有端口都已打开,vm可以在我启动集群时相互ping Docker信息告诉我: 现在,我尝试将节点(其他VM)加入集群。我使用启动管理器后推荐的命令。 但我得到了: Docker信息告诉我: 集群管理器: 如何调试此问题,或者我是否忘记执行某些重要步骤?服务器之间是否需要ssh访问?谢谢 节点上的日志: 有时警告:

  • 问题内容: 因此,我尝试将外部文件中的纯文本加载到页面中,并且标题中始终出现错误。我究竟做错了什么?(我完全按照教程学习!)谢谢。 的HTML jQuery查询 编辑:显然没有成功。不知道为什么,文件就在它旁边。 问题答案: 尝试指定一个dataType:

  • 问题内容: 当我使用pydot运行非常简单的代码时 它向我显示错误消息: 我正在使用python 2.7.3 问题答案: 回答: (上游)的不兼容性已由6dff94b3f1修复,因此`pydot = 1.1pyparsing >= 1.5.7`](https://github.com/erocarrera/pydot/commit/e26af21426fcf15955f7b11b348b14dc6

  • 所以我对Node和Webpack还不熟悉,我很难让我的项目正确编译。每次我将其加载到浏览器时,都会出现错误:。这是我的一份网页。配置。js文件: 这是我的主要作品的副本。js文件: 最后,这里是我已安装的节点包的列表: Babel-core Babel-loader Babel-preet-es2015 巴贝尔-预设-反应 巴贝尔-预设-阶段-0 Babelify 反应 report-dom we

  • 我正在使用PHP7.3编写一个函数,该函数循环访问输入中接收的一组节点,并将它们添加到文档中。 它可以工作,但当输入值不是数组而是DOMNodeList时,它只在第一个元素上循环。 要再现问题,请执行以下操作: 预期产出: 然而我得到: 循环是不完整的,并且不知为什么第一个元素的引用被从前一个列表中移除并添加到后一个列表中(因此大小为3)。而且,如果我评论 循环按预期遍历列表。函数appendCh

  • 我无法导入PY2Neo的元素:Graph、Node、NodeSelector、Relationship 当我尝试直接在WinPython Commad提示符上编写代码时,它工作得很好: 但是当我使用记事本++在文件中键入它,并尝试在命令提示符下运行它时,它就不起作用了: