Docker Docker Swarm 托管节点上的引擎版本升级,无需停机
Docker Engine version upgrade on Docker Swarm managed nodes, without downtime
我想将 Docker 我的 Docker Swarm 管理节点(管理节点和工作节点)上的引擎从 18.06
升级到 19.03
,而不会导致任何停机时间。
我看到有很多在线教程可以在不停机的情况下滚动更新 Docker 化的应用程序,但与升级所有 Docker Swarm 托管节点上的 Docker 引擎无关。
真的不可能在 Docker Swarm 托管节点上升级 Docker 守护进程而不停机吗?如果是真的,那真是太可惜了。
提前感谢 SO 的精彩社区!
您可以耗尽您的节点,然后升级您的 docker 版本,然后再次激活它。
对所有节点重复此步骤。
DRAIN 可用性阻止节点从 swarm 管理器接收新任务。管理器在节点上停止任务 运行 并在具有 ACTIVE 可用性的节点上启动副本任务。
有关详细信息,您可以参考此 link :- https://docs.docker.com/engine/swarm/swarm-tutorial/drain-node/
您可以就地升级管理器,一次升级一个。在此升级过程中,您将使用 docker node update
耗尽节点,然后使用 运行 使用正常的 OS 命令升级到 docker 引擎,然后 return节点激活。当管理器具有混合版本时,在集群中添加或删除节点是行不通的。这意味着您不能在升级版本的同时从头开始安装完全替换节点。所有管理器都需要相同的版本(已升级),然后您可以查看 rebuilding/replacing 主机。我过去看到的是节点没有完全加入管理器仲裁,在失去足够多的管理器后,你最终会失去仲裁。
所有管理器都升级后,您就可以升级工作器,既可以就地升级也可以更换节点。在worker全部升级之前,不要使用任何新功能。
我想将 Docker 我的 Docker Swarm 管理节点(管理节点和工作节点)上的引擎从 18.06
升级到 19.03
,而不会导致任何停机时间。
我看到有很多在线教程可以在不停机的情况下滚动更新 Docker 化的应用程序,但与升级所有 Docker Swarm 托管节点上的 Docker 引擎无关。
真的不可能在 Docker Swarm 托管节点上升级 Docker 守护进程而不停机吗?如果是真的,那真是太可惜了。
提前感谢 SO 的精彩社区!
您可以耗尽您的节点,然后升级您的 docker 版本,然后再次激活它。
对所有节点重复此步骤。
DRAIN 可用性阻止节点从 swarm 管理器接收新任务。管理器在节点上停止任务 运行 并在具有 ACTIVE 可用性的节点上启动副本任务。
有关详细信息,您可以参考此 link :- https://docs.docker.com/engine/swarm/swarm-tutorial/drain-node/
您可以就地升级管理器,一次升级一个。在此升级过程中,您将使用 docker node update
耗尽节点,然后使用 运行 使用正常的 OS 命令升级到 docker 引擎,然后 return节点激活。当管理器具有混合版本时,在集群中添加或删除节点是行不通的。这意味着您不能在升级版本的同时从头开始安装完全替换节点。所有管理器都需要相同的版本(已升级),然后您可以查看 rebuilding/replacing 主机。我过去看到的是节点没有完全加入管理器仲裁,在失去足够多的管理器后,你最终会失去仲裁。
所有管理器都升级后,您就可以升级工作器,既可以就地升级也可以更换节点。在worker全部升级之前,不要使用任何新功能。