第 12 章 替换失败的磁盘


如果其中一个磁盘在 Ceph 集群中失败,请完成以下步骤来替换它:

  1. 确定是否存在设备名称更改,请参阅 第 12.1 节 “确定设备名称是否有变化”
  2. 确保 OSD 已关闭并销毁,请参阅 第 12.2 节 “确保 OSD 已关闭并销毁”
  3. 从系统中删除旧磁盘并安装替换磁盘,请参阅 第 12.3 节 “从系统中删除旧磁盘并安装替换磁盘”
  4. 验证磁盘替换是否成功,请参阅 第 12.4 节 “验证磁盘替换是否成功”

12.1. 确定设备名称是否有变化

在替换磁盘前,请确定替换 OSD 的替换磁盘在操作系统中是否与您要替换的设备不同。如果替换磁盘具有不同的名称,您必须更新 devices 列表的 Ansible 参数,以便后续运行 ceph-ansible,包括 director 运行 ceph-ansible 时不会因为更改而失败。有关使用 director 时必须更改的设备列表示例,请参阅 第 5.3 节 “映射 Ceph Storage 节点磁盘布局”

警告

如果设备名称更改,并且您按照以下流程在 ceph-ansible 或 director 之外更新您的系统,则配置管理工具不会与它们管理的系统不同步,直到您更新系统定义文件并重新处理配置,且配置没有错误。

存储设备的持久性命名

sd 驱动程序管理的存储设备在重启后可能并不总是有相同的名称。例如,通常由 /dev/sdc 识别的磁盘可能命名为 /dev/sdb。即使您希望将一个磁盘作为 /dev/sdc 的替换磁盘,对于替换磁盘 /dev/sdc 在操作系统中也可以显示为 /dev/sdd。要解决这个问题,请使用持久且与以下模式匹配的名称: /dev/disk/by the。如需更多信息,请参阅 Red Hat Enterprise Linux (RHEL) 7 存储管理指南 中的 持久 命名

根据您用于部署 Ceph 的命名方法,您可能需要在替换 OSD 后更新 devices 列表。使用以下命名方法列表来确定是否必须更改 devices 列表:

主号和次号范围方法

如果您使用 sd 并希望在安装新磁盘后继续使用它,请检查名称是否已改变。如果名称没有改变,例如,如果与 /dev/sdd 正确出现相同的名称,则不需要在完成磁盘替换过程后更改名称。

重要

不建议使用这个命名方法,因为名称仍然会在一段时间内不一致。如需更多信息,请参阅 RHEL 7 存储管理指南中的持久命名

by-path 方法

如果您使用此方法,且在同一插槽中添加替换磁盘,则路径一致,且不需要更改。

重要

虽然这种命名方法优先于主号和次号范围方法,但请谨慎操作以确保目标号不会改变。例如,如果主机适配器移到不同的 PCI 插槽,则使用持久性绑定和更新名称。另外,如果 HBA 无法探测到,或者如果在系统中安装了新的 HBA,则 SCSI 主机号可能会改变。在 RHEL7 和 RHEL8 之间,by-path 命名方法也有所不同。如需更多信息,请参阅:

by-uuid 方法
如果使用此方法,您可以使用 blkid 实用程序将新磁盘设置为具有与旧磁盘相同的 UUID。如需更多信息,请参阅 RHEL 7 存储管理指南中的持久命名
by-id 方法
如果使用这个方法,您必须更改 devices 列表,因为这个标识符是该设备的属性,设备已被替换。

将新磁盘添加到系统时,如果可以根据 RHEL7 Storage 管理员指南 修改持久命名属性,请参阅 持久性命名 机制,以便设备名称保持不变,则不需要更新设备列表并重新运行 ceph-ansible,或者触发 director 重新运行 ceph-ansible,您可以继续磁盘替换过程。但是,您可以重新运行 ceph-ansible,以确保更改不会产生任何不一致。

警告

确认替换磁盘的大小与原始磁盘相同,以确保 Red Hat Ceph Storage 性能一致。如果同一大小的磁盘不可用,请在继续磁盘替换前联系 Red Hat Ceph Storage 支持。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部