docker swarm是否在将一个节点排空到其他节点时重新安排服务?

时间:2018-08-28 09:44:23

标签: linux docker swarm moby

我有一个Docker Swarm Stack。确切地说,三个管理器和两个节点。一个节点(仅在该节点上)上运行正常的服务很少,而我上面有一个僵尸容器,无法杀死它。我想耗尽此节点以防止访问此“坏的”容器(该容器正在工作,只是不响应任何命令,它是一个网站容器),并在以后创建一个健康的容器。而且我不确定这些服务是否会重新安排到“健康”节点上?

大概是docker system prune尚未正确完成其工作,现在系统处于锁定模式。

我正在使用Moby Linux。

$ docker version
Client:
 Version:   17.12.0-ce
 API version:   1.35
 Go version:    go1.9.2
 Git commit:    c97c6d6
 Built: Wed Dec 27 20:05:03 2017
 OS/Arch:   linux/amd64

Server:
 Engine:
  Version:  17.12.0-ce
  API version:  1.35 (minimum version 1.12)
  Go version:   go1.9.2
  Git commit:   c97c6d6
  Built:    Wed Dec 27 20:12:30 2017
  OS/Arch:  linux/amd64
  Experimental: true

UDP1 :耗尽节点不会停止任何容器或重新安排服务,至少从一开始就不会。基本上,该节点上的所有服务都将继续运行。那是有趣的问题。

UPD2 :重新启动后,它开始出现有关“找不到此类映像...”的错误,可以通过再次登录Docker Hub来解决。

1 个答案:

答案 0 :(得分:0)

这是集群,相同Kubernetes的原理,如果一个节点出现故障,只要存在主节点,它就应重新安排所有容器到其他节点的分配。