第 3 章 将 RHCS 5 升级到 RHCS 7,涉及启用了扩展模式的 RHEL 8 升级到 RHEL 9


您可以在启用了扩展模式的情况下从 Red Hat Ceph Storage 5 升级到 Red Hat Ceph Storage 8,包括 Red Hat Enterprise Linux 8 到 Red Hat Enterprise Linux 9。

重要

在升级到最新版本的 Red Hat Ceph Storage 8 之前,升级到 Red Hat Ceph Storage 5 的最新版本。

先决条件

  • Red Hat Enterprise Linux 8 上的 Red Hat Ceph Storage 5 在启用了扩展模式的情况下运行所需的主机和守护进程。
  • 备份 Ceph 二进制文件(/usr/sbin/cephadm)、ceph.pub (/etc/ceph),以及 Ceph 集群从管理节点的公共 SSH 密钥。

流程

  1. 登录到 Cephadm shell:

    示例

    [ceph: root@host01 /]# cephadm shell

  2. 将第二个节点标记为集群中的 admin,以便在重新置备 admin 节点时管理集群。

    语法

    ceph orch host label add HOSTNAME _admin

    示例

    [ceph: root@host01 /]# ceph orch host label add host02_admin

  3. 设置 noout 标志。

    示例

    [ceph: root@host01 /]# ceph osd set noout

  4. 排空主机中的所有守护进程:

    语法

    ceph orch host drain HOSTNAME --force

    示例

    [ceph: root@host01 /]# ceph orch host drain host02 --force

    _no_schedule 标签自动应用到阻止部署的主机。

  5. 检查所有守护进程是否已从存储集群中移除:

    语法

    ceph orch ps HOSTNAME

    示例

    [ceph: root@host01 /]# ceph orch ps host02

  6. zap 设备,以便在主机排空有 OSD 时,可以使用它们在主机重新添加时重新部署 OSD。

    语法

    ceph orch device zap HOSTNAME DISK --force

    示例

    [ceph: root@host01 /]# ceph orch device zap ceph-host02 /dev/vdb --force
    
    zap successful for /dev/vdb on ceph-host02

  7. 检查移除 OSD 的状态:

    示例

    [ceph: root@host01 /]# ceph orch osd rm status

    当 OSD 上没有剩余的放置组(PG)时,该 OSD 会停用并从存储集群中移除。

  8. 从集群中删除主机:

    语法

    ceph orch host rm HOSTNAME --force

    示例

    [ceph: root@host01 /]# ceph orch host rm host02 --force

  9. 将对应的主机从 RHEL 8 重新置备到 RHEL 9,如 从 RHEL 8 升级到 RHEL 9 所述。
  10. 使用 --limit 选项运行 preflight playbook:

    语法

    ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --limit NEWHOST_NAME

    示例

    [ceph: root@host01 /]# ansible-playbook -i hosts cephadm-preflight.yml --extra-vars "ceph_origin={storage-product}" --limit host02

    preflight playbook 在新主机上安装 podmanlvm2chronydcephadm。安装完成后,cephadm 驻留在 /usr/sbin/ 目录中。

  11. 将集群的公共 SSH 密钥提取到文件夹:

    语法

    ceph cephadm get-pub-key ~/PATH

    示例

    [ceph: root@host01 /]# ceph cephadm get-pub-key ~/ceph.pub

  12. 将 Ceph 集群的公共 SSH 密钥复制到重新置备的节点上:

    语法

    ssh-copy-id -f -i ~/PATH root@HOST_NAME_2

    示例

    [ceph: root@host01 /]# ssh-copy-id -f -i ~/ceph.pub root@host02

    1. 可选:如果删除的主机有一个 monitor 守护进程,则在将主机添加到集群前,添加- unmanaged 标志来监控部署。

      语法

      ceph orch apply mon PLACEMENT --unmanaged

  13. 再次将主机添加到集群中,并添加之前存在的标签:

    语法

    ceph orch host add HOSTNAME IP_ADDRESS --labels=LABELS

    1. 可选:如果删除的主机最初部署了 monitor 守护进程,则需要使用 location 属性手动添加 monitor 守护进程,如 使用新监控器替换 tiebreaker 中所述。

      语法

      ceph mon add HOSTNAME IP LOCATION

      示例

      [ceph: root@host01 /]# ceph mon add ceph-host02 10.0.211.62 datacenter=DC2

      语法

      ceph orch daemon add mon HOSTNAME

      示例

      [ceph: root@host01 /]# ceph orch daemon add mon ceph-host02

  14. 验证重新置备主机上的守护进程使用相同的 ceph 版本成功运行:

    语法

    ceph orch ps

  15. 将 monitor 守护进程放置重新设置为 managed

    语法

    ceph orch apply mon PLACEMENT

  16. 对所有主机重复上述步骤。

    1. .arbiter monitor 无法排空或从主机中删除。因此,需要重新置备仲裁 mon 到另一个 tie-breaker 节点,然后排空或从主机中删除,如 使用新监控器替换 tiebreaker 中所述。
  17. 按照相同的方法重新置备管理节点,并使用第二个 admin 节点来管理集群。
  18. 将备份文件重新添加到节点。
  19. .使用第二个 admin 节点,再次将 admin 节点添加到集群。将 mon 部署设置为 非受管
  20. 按照 使用新监控器替换 tiebreaker,以重新添加旧的仲裁程序 mon 并删除之前创建的临时 mon。
  21. 取消设置 noout 标志。

    语法

    ceph osd unset noout

  22. 验证 Ceph 版本和集群状态,以确保所有 demons 在 Red Hat Enterprise Linux 升级后正常工作。
  23. 按照 使用 cephadm 升级 Red Hat Ceph Storage 集群,以执行 Red Hat Ceph Storage 5 升级到 Red Hat Ceph Storage 8 升级。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.