-
打开manager1服务器 shell
-
部署redis 3.0.6 到swarm,并设置更新延迟为 10s
$ docker service create \ --replicas 3 \ --name redis \ --update-delay 10s \ redis:3.0.6-alpine fnrfiohgr39tjae2jia5t4ox3
--update-delay
: 更新服务任务(Task)执行间隔, 单位 s,m,h--update-parallelism
: 并行更新服务任务数量, 默认1RUNNING
: 更新服务任务返回RUNNING
表示任务成功FAILED
: 更新服务任务返回FAILED
表示任务成功--update-failure-action
: 如果更新服务任务失败后的操作,默认pause
即暂停更新,结束该任务 -
查看 redis 服务信息
$ docker service inspect --pretty redis ID: fnrfiohgr39tjae2jia5t4ox3 Name: redis Service Mode: Replicated Replicas: 3 Placement: UpdateConfig: Parallelism: 1 Delay: 10s On failure: pause Monitoring Period: 5s Max failure ratio: 0 Update order: stop-first RollbackConfig: Parallelism: 1 On failure: pause Monitoring Period: 5s Max failure ratio: 0 Rollback order: stop-first ContainerSpec: Image: redis:3.0.6-alpine@sha256:404a3444162e8c6f7c375a27746d7b75554e1a89436bd0dc7503af25ae50cdcb Resources: Endpoint Mode: vip
-
更新redis 版本 更新计划
- 停止第一个任务(容器)
- 添加更新调度到此任务
- 启动更新后的容器
- 如果任务执行结果为
RUNNING
, 等待 delay 设置的时间后开始下一个任务 - 如果有任意一个任务失败,停止此次更新
$ docker service update --image redis:3.0.7 redis redis
-
查看更新后的服务信息
$ docker service inspect --pretty redis ID: fnrfiohgr39tjae2jia5t4ox3 Name: redis Service Mode: Replicated Replicas: 3 UpdateStatus: State: updating Started: 18 seconds ago Message: update in progress Placement: UpdateConfig: Parallelism: 1 Delay: 10s On failure: pause Monitoring Period: 5s Max failure ratio: 0 Update order: stop-first RollbackConfig: Parallelism: 1 On failure: pause Monitoring Period: 5s Max failure ratio: 0 Rollback order: stop-first ContainerSpec: Image: redis:3.0.7@sha256:730b765df9fe96af414da64a2b67f3a5f70b8fd13a31e5096fee4807ed802e20 Resources: Endpoint Mode: vip
-
查看更新过程中的容器状态
$ docker service ps redis ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS 9uzdoruo0n27 redis.1 redis:3.0.7 ubuntu-1604-002 Running Preparing 23 seconds ago uzabimd9ilx5 \_ redis.1 redis:3.0.6-alpine ubuntu-1604-002 Shutdown Shutdown 21 seconds ago 6lhvz3aanelv redis.2 redis:3.0.6-alpine ubuntu-1604-003 Running Running about an hour ago i55mt8fzqqbp redis.3 redis:3.0.7 ubuntu-1604-001 Running Running 33 seconds ago rxu3t1iy6qcg \_ redis.3 redis:3.0.6-alpine ubuntu-1604-001 Shutdown Shutdown about a minute ago
Docker Swarm 入门示例7: 滚动更新服务
猜你喜欢
转载自my.oschina.net/u/915811/blog/1593855
今日推荐
周排行