Skip to main content
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

节点容器迁移要求

贡献者

通过节点迁移功能,您可以手动将节点从一台主机移动到另一台主机。通常,两台主机位于同一物理数据中心。

通过节点迁移,您可以在不中断网格操作的情况下执行物理主机维护。在使物理主机脱机之前、可以将所有StorageGRID 节点逐个移动到另一台主机。迁移节点只需要每个节点短暂停机,不应影响网格服务的运行或可用性。

如果要使用 StorageGRID 节点迁移功能,则部署必须满足其他要求:

  • 在一个物理数据中心的主机之间使用一致的网络接口名称

  • StorageGRID 元数据和对象存储库卷的共享存储,可由单个物理数据中心中的所有主机访问。例如,您可以使用 NetApp E 系列存储阵列。

如果您使用的是虚拟主机、并且底层虚拟机管理程序层支持VM迁移、则可能需要使用此功能、而不是StorageGRID 中的节点迁移功能。在这种情况下,您可以忽略这些附加要求。

在执行迁移或虚拟机管理程序维护之前,请正常关闭节点。请参阅的说明"关闭网格节点"

不支持 VMware 实时迁移

在VMware VM、OpenStack实时迁移和VMware实时vMotion发生原因上执行裸机安装时、虚拟机时钟时间会跳过、任何类型的网格节点均不支持。尽管时钟时间不正确,但极少会导致数据丢失或配置更新。

支持冷迁移。在冷迁移中,您需要先关闭 StorageGRID 节点,然后再在主机之间迁移它们。请参阅的说明"关闭网格节点"

网络接口名称一致

要将节点从一台主机移动到另一台主机、StorageGRID 主机服务需要具有一定的信心、即该节点当前位置的外部网络连接可以在新位置复制。它可以通过在主机中使用一致的网络接口名称来获得这种信心。

例如,假设主机 1 上运行的 StorageGRID 节点 A 已配置以下接口映射:

此图通过周围文字进行了说明。

箭头的左侧对应于从 StorageGRID 容器中查看的传统接口(即网格接口,管理接口和客户端网络接口)。箭头的右侧对应于提供这些网络的实际主机接口,它们是同一物理接口绑定下的三个 VLAN 接口。

现在,假设您要将节点 A 迁移到 Host2 。如果 Host2 还具有名为 bond0.1001 , bond0.1002 和 bond0.1003 的接口,则系统将允许移动,前提是同名接口在 Host2 上提供的连接与在 Host1 上提供的连接相同。如果 Host2 的接口名称不相同,则不允许移动。

可通过多种方法在多个主机之间实现一致的网络接口命名;有关一些示例、请参见"配置主机网络"

共享存储

为了实现快速、低开销的节点迁移、StorageGRID 节点迁移功能不会以物理方式移动节点数据。而是将节点迁移作为一对导出和导入操作来执行,如下所示:

步骤
  1. 在"节点导出"操作期间、系统会从HostA上运行的节点容器中提取少量永久性状态数据、并将其缓存在该节点的系统数据卷上。然后,将对 HostA 上的节点容器进行实例化。

  2. 在"节点导入"操作期间、将例化主机B上使用与主机A上有效的相同网络接口和块存储映射的节点容器。然后,缓存的永久性状态数据将插入到新实例中。

在这种操作模式下,节点的所有系统数据和对象存储卷都必须可从主机 A 和主机 B 访问,才能允许迁移并正常运行。此外,它们必须已使用名称映射到节点,这些名称可以保证引用主机 A 和主机 B 上的相同 LUN 。

以下示例显示了StorageGRID存储节点块设备映射的一个解决方案、其中、主机上正在使用DM多路径、而中使用了别名字段 /etc/multipath.conf、以便在所有主机上提供一致且友好的块设备名称。

此图通过周围文字进行了说明。