2016-06-08 80 views
5

我按照这些步骤来创建Docker群集群。Docker群管理器无法识别群集节点

  1. 创建Cunsol
    $泊坞窗机创建-d VirtualBox的MH-密钥库
    $的eval “$(泊坞窗机ENV MH-密钥库)”
    $泊坞窗运行-d \
    -p “8500:8500” \
    -h “领事” \
    progrium /领事-server -bootstrap

  2. 创建群经理
    $泊坞窗-machine create -d virtualbox node1
    $ docker run -d -p 4000:4000 swarm manage -H:4000 --replication - advertise $(docker-machine ip node1):4000 consul:// $(docker-machine IP MH-密钥库):8500

  3. 创建群节点
    $泊坞窗机创建-d VirtualBox的节点2
    $泊坞窗运行-d群加入--advertise = $(泊坞窗机IP节点2):2375领事:// $(泊坞窗机IP MH-密钥库):8500

  4. 登录节点1
    $泊坞窗机SSH节点1
    $搬运工-H:4000信息

但该指令输出

(unknown): 192.168.99.106:2375(node2 ip)
└ ID:
└ Status: Pending
└ Containers: 0
└ Reserved CPUs: 0/0
└ Reserved Memory: 0 B/0 B
└ Labels:
└ Error: Cannot connect to the Docker daemon. Is the docker daemon running on this host?....

我该如何解决这个问题?
我已经检查node2,它运行良好。

[更新]我关注this page,它运作良好。但是我仍然不知道如何在没有码头机的情况下建立群集群。

[更新]另一种方法也不奏效。

docker-machine create -d virtualbox \ 
    --swarm \ 
    --swarm-discovery="consul://$(docker-machine ip mh-keystore):8500" \ 
    --engine-opt="cluster-store=consul://$(docker-machine ip mh-keystore):8500" \ 
    --engine-opt="cluster-advertise=eth1:2376" \ 
    mhs-demo1 

节点1泊坞窗信息出现MHS-demo1的IP,但信息还是未知数..

[更新]
当我输入的eval $(泊坞窗机ENV --swarm节点1) 它显示

Error checking TLS connection: "node1" is not a swarm master. The --swarm flag is intended for use with swarm masters Does this cause error ? Why using swarm manager instruction to set up is not swarm master?

这太奇怪了。我怎样才能得到与

docker-machine create \ -d virtualbox \ --swarm --swarm-master \ --swarm-discovery="consul://$(docker-machine ip mh-keystore):8500" \ --engine-opt="cluster-store=consul://$(docker-machine ip mh-keystore):8500" \ --engine-opt="cluster-advertise=eth1:2376" \ mhs-demo0 

使用swarm指令相同的结果?

我想使用swarm指令,因为我不想在创建它时声明swarm master。

回答

0

尝试删除该文件与:

sudo rm /etc/docker/key.json 

然后,重新启动与泊坞窗:

sudo service docker restart 

此时泊坞窗将作出新的key.json文件你的主人应该能够找到你的工人。这种情况有时会在您为所有工作节点使用相同的映像时发生,但这是一个简单的修复方法。