Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
docker swarm:复制服务和全局服务的区别_Docker_Docker Swarm - Fatal编程技术网

docker swarm:复制服务和全局服务的区别

docker swarm:复制服务和全局服务的区别,docker,docker-swarm,Docker,Docker Swarm,根据本文件中的图片: 对于所描述的两个服务,命令#docker service ls的输出应该是什么样子?我的理解是: grey global "1/1" consul:latest yellow replicated "1/3" consul:latest 我不确定“”之间的数字 我需要支持来理解输出 根据答案正

根据本文件中的图片:

对于所描述的两个服务,命令
#docker service ls
的输出应该是什么样子?我的理解是:

grey                   global              "1/1"                 consul:latest 
yellow                 replicated          "1/3"                  consul:latest
我不确定“”之间的数字 我需要支持来理解输出

根据答案正确输出,图片为:

 grey                   global              "5/5"                 consul:latest 
 yellow                 replicated          "3/3"                 consul:latest

在没有放置约束的情况下,全局模式下的服务将在每个群集节点上部署一个副本。因此,您将拥有5/5个副本

可以使用放置约束将部署限制到特定节点,例如工作节点或具有特定节点标签的节点:

  • 可以使用放置约束将部署限制为 工作节点,将产生4个副本

  • 您可以将节点标签添加到n个节点,并将其用作放置 约束,生成n个副本

虽然全局模式服务保证在满足放置约束的每个节点上运行的服务只有一个副本,但对于复制模式服务,情况并不一定如此。复制模式服务通常在节点之间呈扇形展开,但也可以放置在单个节点上

对于(黄色)复制模式服务,为什么将复制副本列为1/3?如果成功部署所有复制副本,则应为3/3


这些数字表示服务总部署的摘要。它不指示复制副本在群集中的分布方式,也不指示复制副本在何处运行。复制副本在何处运行。

感谢您的澄清。因此,在复制节点的情况下,3/3意味着黄色的三个服务可能放置在单个工作节点上。对吗?那么,对于复制服务来说,什么是有意义的用例呢?我仍然无法区分全局副本和复制副本……在3/3上,“/”的左侧表示当前正在运行的副本的数量,而“/”的右侧表示所需副本的数量。它不指示它们在哪个节点上运行。使用
docker service ps{servicename}
标识已在哪个节点上调度复制副本。像Traefik这样的反向代理是全局服务的一个很好的例子——每个节点运行超过1个实例是没有意义的,不是吗?如果保持运行实例的数量稳定比在单独节点上运行每个实例更重要,请使用复制服务。