Сервисы Docker не перебалансируются автоматически после событий, влияющих на узлы Docker Swarm, поэтому вы должны инициировать этот процесс самостоятельно.
Отобразим задачи для конкретной службы.
Обе задачи выполняются на одном сервере из-за неожиданного перезапуска сервера swarm-margay.
$ docker service ps blog_production
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS z6uimamz8dkw blog_production.1 registry.example.org/websites/blog:production swarm-coloclo Running Running 2 minutes ago 7bpspre223bc _ blog_production.1 registry.example.org/websites/blog:production swarm-margay Shutdown Shutdown 5 minutes ago 4vttp5y5pk30 blog_production.2 registry.example.org/websites/blog:production swarm-coloclo Running Running 2 minutes ago 52rh7rj8izqe _ blog_production.2 registry.example.org/websites/blog:production swarm-margay Shutdown Shutdown 2 minutes ago
Инициируйте перебалансировку служб, принудительно обновив.
Вам необходимо принудительно выполнить это обновление, так как никаких изменений не требуется, поэтому по умолчанию никаких действий предприниматься не будет.
$ docker service update --force blog_production
blog_production overall progress: 2 out of 2 tasks 1/2: running [==================================================>] 2/2: running [==================================================>] verify: Service converged
Отобразите задачи, чтобы убедиться, что сервис перебалансирован.
$ docker service ps blog_production
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS 0e3i9bj9tz3c blog_production.1 registry.example.org/websites/blog:production swarm-coloclo Running Running about a minute ago c2vzwb753bc7 blog_production.2 registry.example.org/websites/blog:production swarm-margay Running Running 2 minutes ago