试用docker 1.12 swarmkit遇到的问题

东方星痕 发布于 2016/08/02 00:35
阅读 928
收藏 0

华为云11月刊推送:DIY微信问答机器人,高性能计算代码的20个技巧!>>>

用docker service create 创建的服务里. 

[root@centos-node4 ~]# docker service ls 
ID            NAME  REPLICAS  IMAGE   COMMAND
c4xubqfahzid  demo  2/2       alpine  ping docker.com
[root@centos-node4 ~]# docker service tasks demo 
ID                         NAME    SERVICE  IMAGE   LAST STATE         DESIRED STATE  NODE
9878bo6xyx0459qw9lfydwptv  demo.1  demo     alpine  Running 8 minutes  Running        centos-node5
9u1p24ccj9lbyjilnih2b40s9  demo.2  demo     alpine  Running 7 minutes  Running        centos-node4
[root@centos-node4 ~]# docker ps 
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
fc3cbcb4d5c8        alpine:latest       "ping docker.com"   7 minutes ago       Up 7 minutes                            demo.2.9u1p24ccj9lbyjilnih2b40s9






发现实际上的容器名是用的`taskname.${number}.taskid`拼接的


然后容器无论用什么原因停了(host重启也会), 会启动一个新的容器, 容器id会改变, 原来的容器还是存在的
这一组service服务里如果用的是同一个网络的话, 是可以互相联通的. 




1.  这就有个问题了, 那如果其中一个容器停止了, 新的taskid 又不知道, 在容器里怎么去连接新启动的那一个? 
ps: 如果把create 的参数--restart-condition 设置成none的话, 重启一个容器后, docker service tasks 看到的状态不会更新了, 一直是Shutdown状态


2. 另一个问题就是这样是不是只能和数据卷了? 服务器启动时, 如果多节点虽然可以用filter过滤, 但出现两个容器跑一个机器去时数据卷怎么同步的? 






0802: 更新


1.  我试了下, 发现是manager的ip可以自动识别里边的服务,自动负载均衡。 但防火墙规则加了外边也访问不了, 不知道为什么。 
ps:用create 服务时用-p 指定端口, 但没测试是不是必需的


2. 还有就是用scale扩容后,过一会,服务就访问不了的, 但容器状态是正常的, 容器里边也是能访问的




ps:  测试环境搭建
加载中
0
百世经纶之傲笑红尘
百世经纶之傲笑红尘
Dockerone 刚见君,Oschina又遇见,有缘千里相逢呐,QXIAOYOUXIA(尘乾)
0
z
zhouzhou66

你好,我在用swarmkit添加节点的时候,出现下面的错误,请问该怎么解决啊

root@docker-20:/tmp# swarmd -d /tmp/node --hostname node2 --join-addr 10.10.10.17:4242
Warning: Specifying a valid address with --listen-remote-api may be necessary for other managers to reach this one.
WARN[0000] error fetching signed node certificate: rpc error: code = 3 desc = A valid join token is necessary to join this cluster
WARN[0000] error fetching signed node certificate: rpc error: code = 3 desc = A valid join token is necessary to join this cluster
WARN[0000] error fetching signed node certificate: rpc error: code = 3 desc = A valid join token is necessary to join this cluster
WARN[0000] error fetching signed node certificate: rpc error: code = 3 desc = A valid join token is necessary to join this cluster
WARN[0000] error fetching signed node certificate: rpc error: code = 3 desc = A valid join token is necessary to join this cluster
Error: rpc error: code = 3 desc = A valid join token is necessary to join this cluster
FATA[0000] rpc error: code = 3 desc = A valid join token is necessary to join this cluster

返回顶部
顶部