当前位置: 首页 > 面试题库 >

Docker1.12 Worker无法加入集群(集群:待定)

万俟招
2023-03-14
问题内容

管理员版本Docker version 1.12.0-rc5, build a3f2063

工人版本Docker version 1.12.0-rc5, build a3f2063

创建了Swarm管理器:

docker swarm init --advertise-addr "172.25.30.2:4243"

    Swarm initialized: current node (3kmewyb10p8xj3ke5rpjyw4s8) is now a manager.

    To add a worker to this swarm, run the following command:
        docker swarm join \
        --token SWMTKN-1-5lwzvv7au6hosiqqmdwmcxvmlmhtz4ts04jsg06284fq3posn0-enq26dqnwma38ij48hymtnioq \
        172.25.30.2:4243

    To add a manager to this swarm, run the following command:
        docker swarm join \
        --token SWMTKN-1-5lwzvv7au6hosiqqmdwmcxvmlmhtz4ts04jsg06284fq3posn0-85cwe5pf779qw0knjn6wxdbim \
        172.25.30.2:4243

然后创建工人

docker swarm join --token SWMTKN-1-5lwzvv7au6hosiqqmdwmcxvmlmhtz4ts04jsg06284fq3posn0-enq26dqnwma38ij48hymtnioq 172.25.30.2:4243
    Error response from daemon: Timeout was reached before node was joined. Attempt to join the cluster will continue in the background. Use "docker info" command to see the current swarm status of your node.

我已经检查了工人的日志

time="2016-08-01T00:22:47.449844174-07:00" level=warning msg="failed to retrieve remote root CA certificate: rpc error: code = 1 desc = context canceled" 
time="2016-08-01T00:22:47.449962215-07:00" level=warning msg="failed to retrieve remote root CA certificate: rpc error: code = 1 desc = context canceled" 
time="2016-08-01T00:22:47.450025342-07:00" level=warning msg="failed to retrieve remote root CA certificate: rpc error: code = 1 desc = context canceled" 
time="2016-08-01T00:22:47.450081950-07:00" level=warning msg="failed to retrieve remote root CA certificate: rpc error: code = 1 desc = context canceled" 
time="2016-08-01T00:22:47.450142443-07:00" level=warning msg="failed to retrieve remote root CA certificate: rpc error: code = 1 desc = context canceled" 
time="2016-08-01T00:22:47.450202836-07:00" level=error msg="cluster exited with error: rpc error: code = 1 desc = context canceled" 
time="2016-08-01T00:23:31.351868722-07:00" level=error msg="Handler for POST /v1.24/swarm/join returned error: Timeout was reached before node was joined. Attempt to join the cluster will continue in the background. Use \"docker info\" command to see the current swarm status of your node."

在中docker info,我看到了“虫群:待定”

我也做到了docker swarm update!尽管如此,该工作人员仍无法加入集群。所以,我该怎么爱

更新1

卸载并删除配置文件,然后再次安装docker 1.12版本Docker version 1.12.0, build 8eab29e

仍然面临着相同的问题(无法加入和中的“ Swarm:Pending” docker info),其中存在DIFFERENT错误/var/logs/upstat/docker.logs

time="2016-08-01T11:22:08.629760770-07:00" level=error msg="Handler for POST /v1.24/swarm/join returned error: Timeout was reached before node was joined. Attempt to join the cluster will continue in the background. Use \"docker info\" command to see the current swarm status of your node."

谢谢。


问题答案:

问题是,我试图加入错误的“端口”(如docker swarm init输出所示)。

1) 在“ docker swarm init”之前,docker仅在端口“ 4243”上运行。我已经核对了netstat -tulp | grep docker。所以我在那个港口做广告!

root@veeru:~# netstat -tulpn | grep docker
tcp6       0      0 :::4243                 :::*                    LISTEN      8750/dockerd

root@veeru:~# docker swarm init --advertise-addr "172.25.30.2:4243"
Swarm initialized: current node (exvwgj0pu4cd124ljnblt9xff) is now a manager.

To add a worker to this swarm, run the following command:
    docker swarm join \
    --token SWMTKN-1-5j9mpo8hepue6g1sjdas33thr92w1o9hlef5auwqpbxs3glt39-6zomhgu204m9alq51f632nzas \
    172.25.30.2:4243

To add a manager to this swarm, run the following command:
    docker swarm join \
    --token SWMTKN-1-5j9mpo8hepue6g1sjdas33thr92w1o9hlef5auwqpbxs3glt39-axhgqgo4jqw4hv38x578m44wh \
    172.25.30.2:4243

2) 之后docker swarm init,docker以4个端口(包括端口2377netstat -tupln | grep docker))运行。

root@veeru:~# netstat -tulp | grep docker
tcp6       0      0 [::]:2377               [::]:*                  LISTEN      8750/dockerd    
tcp6       0      0 [::]:7946               [::]:*                  LISTEN      8750/dockerd    
tcp6       0      0 [::]:4243               [::]:*                  LISTEN      8750/dockerd    
udp6       0      0 [::]:7946               [::]:*                              8750/dockerd

在第1点中,告诉在worker中docker swarm join使用port 运行4243。以前我确实是那样跑的!(它行不通!)

后来我docker swarm leave加入了端口 2377 。现在我可以加入了!

docker swarm join --token SWMTKN-1-5j9mpo8hepue6g1sjdas33thr92w1o9hlef5auwqpbxs3glt39-6zomhgu204m9alq51f632nzas 172.25.30.2:2377


 类似资料:
  • 我有3个使用Redis运行的EC2实例,如下所示: 服务器001:10.0.1.203,端口:6379 服务器002:10.0.1.202,端口:6380 服务器003:10.0.1.190,端口:6381 每个配置文件: 我可以通过redis连接到每台服务器上的每一台。 但是,当我运行集群创建时,脚本永远不会在服务器001上结束。 服务器002日志: 服务器003日志: 配置中缺少什么?

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

  • 问题内容: 我想在Kubernetes中创建6个节点的Redis集群。我正在使用 Minikube 运行 kubernetes 。 以下是我创建6节点群集的实现。 创建有状态集之后,我将从一个Pod内部执行redis create cluster命令。 这些都是pod的ips。有了这个,我就能启动集群了。但是一旦我手动删除使用 例如,删除IP地址为172.17.0.6:6379的Redis节点(假

  • 我想在kubernetes中创建6个节点的redis集群。我用Minikube运行kubernetes。 下面是我创建6节点集群的实现。 创建有状态集后,我将从其中一个Pod中执行redis创建集群命令。 这些都是豆荚的IP。有了这个,我就可以启动集群了。但一旦我使用 例如,删除具有IP地址的redis节点:172.17.0.6:6379它应该是主节点。删除redis集群后状态为: 过了一段时间,

  • 我们正在尝试创建一个带有两个Docker容器的Hazelcast集群,并从客户端应用程序访问它,但我们可以启动一个Hazelcast容器,而启动另一个容器时,getting无法加入集群。现在关机。例外 我们使用以下命令启动docker容器。

  • 问题内容: 我对SQL(Server2008)的较低层次的了解是有限的,现在我们的DBA对此提出了挑战。让我解释一下这种情况:(我已经提到一些明显的陈述,希望我是对的,但是如果您发现有问题,请告诉我)。 我们有一张桌子,上面放着人们的“法院命令”。创建表(名称:CourtOrder)时,我的创建方式如下: 然后,我将非聚集索引应用于主键(以提高效率)。我的理由是,这是一个唯一字段(主键),应该像我