service 定义了 worker node 上要执行的任务
service 的例子:在 swarm 中启动一个 http 服务,使用的镜像是 httpd:latest,副本数为 3
manager node 负责创建这个 service,经过分析知道需要启动 3 个 httpd 容器,根据当前各 worker node 的状态将运行容器的任务分配下去,比如 worker1 上运行两个容器,worker2 上运行一个容器。
运行了一段时间,worker2 突然宕机了,manager 监控到这个故障,于是立即在 worker3 上启动了一个新的 httpd 容器。
这样就保证了 service 处于期望的三个副本状态。
如何实现 Service 伸缩
docker service scale web_server=5