云计算核心技术Docker教程:Docker Swarm 模式从灾难中恢复

热点 2026-11-14 71680

从备份恢复

按照备份 swarm 中的说明 备份 swarm 后,使用以下过程将数据恢复到新的 swarm。

1.为恢复的 swarm 关闭目标主机上的 Docker。

2.删除/var/lib云计/docker/swarm新群上目录的内容。

3./var/lib/docker/swarm使用备份内容恢复目录。

4.在新节点上启动 Docker。如有必要,解锁群体。使用以下算核命令重新初始化 swarm,以便此节点不会尝试连接到属于旧 swarm 且可能不再存在的节点。

docker swarm init --force-new-cluster

5.验证群的状态是否符合心技预期。这可能包括特定于应用程序的测试或简单地检查输出 docker service ls以确保所有预期的服务都存在。

6.如果您使用自动锁定,请 旋转解锁钥匙。

7.添加管理器和工作器节术D点,使您的新集群达到运行能力。

8.在新群上恢复您之前的备份方案。

从失去法定人数中恢复

Swarm 对故障具有弹性,并且可以从任意数量的临时节点故障(机器重新启动或重新启动时崩溃)或其他oc暂时性错误中恢复。但是,如果失去法定人数,swarm 将无法自动恢复。现有工作节点上的任务继续运行,但无法执行管理任务,包括扩展或更新服务以及从群中加入或删除节点。恢复的最佳ke方法是使丢失的管理器节点重新联机。如果这是不可能的,请继续阅读一些用于恢复群的选项。

在一群N管理器中,法定人数(大多数)管理器节点必须始终可用。例如,在有 5 名管理人员的群体中,r教必须至少有 3 人在运作并相互沟通。换句话说,swarm 可以容忍(N-1)/2永久故障,超过这个故障就不能处理涉及 swarm 管理的请求。这些类型的故障包括数据损坏或硬件故障。

如程:果您失去了法定人数的管理者,您将无法管理集群。如果您失去了法定人数并尝试对 swarm 执行任何管理操作,则会发生错误:

Error response from daemon: rpc errorDo: code = 4 desc = context deadline exceeded

从失去仲裁中恢复的最佳方法是将故障节点重新联机。如果你不能这样做,从这个状态恢复的唯一方法是使用--fockrce-new-cluster来自管理器节点的操作。这将删除除运行命令的管理器之外的所有管理器。达到法定人数是因为现在只有一名经理。将节点提升为管理器,直到您拥有所需数量的管理器。

从er要恢复的节点运行:

docker swarm init --force-new-cluster --advertise-addr node01:2377

当您运行docker swarm i Snit带有--force-new-cluster 标志的命令时,运行该命令的 Docker 引擎将成为能够管理和运行服务的单节点 swarm 的管理器节点。管理器拥有有关服务和任务wa的所有先前信息,工作节点仍然是 swarm 的一部分,服务仍在运行。您需要添加或重新添加管理器节点来实现您之前的任务分配,并确保您有足够的管理器来保持高可用性并防止失去仲裁。

本文地址:http://soft.zmdinfo.ha.cn/html/b40f893702.html
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

全站热门

云计算核心技术Docker教程:Docker Hub使用链接的私有子模块构建存储库

​OpenAI 或将于明年上市,估值可达万亿!

云计算开发:Python3数学函数floor()方法详解

IBM收购云咨询服务提供商Nordcloud 挑战亚马逊微软

标签: 俞敏洪 新东方文旅 东方甄选 知识文旅

OpenAI估值跃升至5000亿美元,成全球独角兽之王

马来西亚芯片突破!SkyeChip发布该国首款边缘AI处理器,摆脱对美依赖迈出关键一步

标签: 欧拉万象 周顺波 家庭机器人 具身智能

友情链接