1.3. 准备升级


作为存储管理员,您可以将 Ceph 存储集群升级到 Red Hat Ceph Storage 5。但是,在进行升级前,存储集群的一些组件必须运行特定的软件版本。以下列表显示在存储集群中安装的最低软件版本,然后才能升级到 Red Hat Ceph Storage 5。

  • Red Hat Ceph Storage 4.3 或更高版本。
  • Ansible 2.9.
  • 最新版本的 Red Hat Ceph Storage 提供的 ceph-ansible。
  • Red Hat Enterprise Linux 8.4 EUS 或更高版本。
  • FileStore OSD 必须迁移到 BlueStore。有关将 OSD 从 FileStore 转换为 BlueStore 的更多信息,请参阅 BlueStore

对于早于 Red Hat Ceph Storage 4.3 的 Red Hat Ceph Storage 版本,没有直接的升级路径。如果您要从 Red Hat Ceph Storage 3 升级,您必须首先升级到 Red Hat Ceph Storage 4.3 或更高版本,然后再升级到 Red Hat Ceph Storage 5。

重要

您只能升级到最新版本的 Red Hat Ceph Storage 5。例如,如果版本 5.1 可用,则无法从 4 升级到 5.0;您必须直接升级到 5.1。

重要

在 Red Hat Enterprise Linux-8.7 (或更高)上的 Red Hat Ceph Storage-4.3.z1 的新部署,或将 Red Hat Ceph Storage-4.3.z1 升级到 5.X,主机 OS 为 Red Hat Enterprise Linux-8.7 (或更高)在 TASK [ceph-mgr : : 等待所有 mgr 变为 up]。Red Hat Enterprise Linux 8.7 发布的 podman 的行为已根据 SELinux 重新标记而有所变化。因此,根据启动顺序,一些 Ceph 容器将无法启动,因为它们无法访问所需的文件。

作为临时解决方案,请参阅知识库文章 RHCS 4.3 安装失败,同时执行命令 'ceph mgr dump'

要将存储集群升级到 Red Hat Ceph Storage 5,红帽建议您集群运行 Red Hat Ceph Storage 4.3 或更高版本。请参阅知识库文章 Red Hat Ceph Storage 发行版本是什么?本文包含到 Ceph 软件包和 ceph-ansible 最新版本的下载链接。

升级过程使用 Ansible playbook 将 Red Hat Ceph Storage 4 存储集群升级到 Red Hat Ceph Storage 5。如果您的 Red Hat Ceph Storage 4 集群是一个非容器化集群,升级过程包括将集群转换为容器化版本的步骤。Red Hat Ceph Storage 5 不在非容器化集群中运行。

如果您有镜像或多站点配置,一次升级一个集群。在升级另一个集群前,请确保每个升级的集群都正常运行。

重要

leapp 不支持对具有加密分区的加密 OSD 或 OSD 进行升级。如果您的 OSD 已加密,并且您要升级主机操作系统,请在升级操作系统前在 ceph-ansible 中 禁用 dmcrypt。有关使用 leapp 的详情,请参考 从 Red Hat Enterprise Linux 7 升级到 Red Hat Enterprise Linux 8

重要

只有在存储集群尚未运行最新版本的 Red Hat Ceph Storage 4 时,才执行此流程中的前三个步骤。Red Hat Ceph Storage 4 的最新版本应该是 4.3 或更高版本。

先决条件

  • 正在运行的 Red Hat Ceph Storage 4 集群。
  • 对存储集群中所有节点的 sudo 级别访问权限。
  • 有效的客户订阅。
  • 对 Ansible 管理节点的根级别访问权限.
  • 用于 Ansible 应用的 Ansible 用户帐户。
  • 启用 Red Hat Ceph Storage 工具和 Ansible 存储库。

流程

  1. 在 Ansible 管理节点上启用 Ceph 和 Ansible 存储库:

    示例

    [root@admin ceph-ansible]# subscription-manager repos --enable=rhceph-4-tools-for-rhel-8-x86_64-rpms --enable=ansible-2.9-for-rhel-8-x86_64-rpms

  2. 更新 Ansible:

    示例

    [root@admin ceph-ansible]# dnf update ansible ceph-ansible

  3. 如果要升级的存储集群包含使用 exclusive-lock 功能的 Ceph 块设备镜像,请确保所有 Ceph 块设备用户都有为客户端创建 denylist 的权限:

    语法

    ceph auth caps client.ID mon 'profile rbd' osd 'profile rbd pool=POOL_NAME_1, profile rbd pool=POOL_NAME_2'

  4. 如果存储集群最初使用 Cockpit 安装,请在 /usr/share/ceph-ansible 目录中创建一个符号链接到 Cockpit 创建它的清单文件,位于 /usr/share/ansible-runner-service/inventory/hosts

    1. 进入 /usr/share/ceph-ansible 目录:

      # cd /usr/share/ceph-ansible
    2. 创建符号链接:

      # ln -s /usr/share/ansible-runner-service/inventory/hosts hosts
  5. 要使用 ceph-ansible 升级集群,请在 etc/ansible/hosts 目录中创建符号链接到 hosts 清单文件:

    # ln -s /etc/ansible/hosts hosts
  6. 如果存储集群最初使用 Cockpit 安装,请将 Cockpit 生成的 SSH 密钥复制到 Ansible 用户的 ~/.ssh 目录中:

    1. 复制密钥:

      语法

      cp /usr/share/ansible-runner-service/env/ssh_key.pub /home/ANSIBLE_USERNAME/.ssh/id_rsa.pub
      cp /usr/share/ansible-runner-service/env/ssh_key /home/ANSIBLE_USERNAME/.ssh/id_rsa

      ANSIBLE_USERNAME 替换为 Ansible 的用户名。常见的默认用户名是 admin

      示例

      # cp /usr/share/ansible-runner-service/env/ssh_key.pub /home/admin/.ssh/id_rsa.pub
      # cp /usr/share/ansible-runner-service/env/ssh_key /home/admin/.ssh/id_rsa

    2. 在密钥文件中设置适当的所有者、组群和权限:

      语法

      # chown ANSIBLE_USERNAME:ANSIBLE_USERNAME /home/ANSIBLE_USERNAME/.ssh/id_rsa.pub
      # chown ANSIBLE_USERNAME:ANSIBLE_USERNAME /home/ANSIBLE_USERNAME/.ssh/id_rsa
      # chmod 644 /home/ANSIBLE_USERNAME/.ssh/id_rsa.pub
      # chmod 600 /home/ANSIBLE_USERNAME/.ssh/id_rsa

      ANSIBLE_USERNAME 替换为 Ansible 的用户名。常见的默认用户名是 admin

      示例

      # chown admin:admin /home/admin/.ssh/id_rsa.pub
      # chown admin:admin /home/admin/.ssh/id_rsa
      # chmod 644 /home/admin/.ssh/id_rsa.pub
      # chmod 600 /home/admin/.ssh/id_rsa

其它资源

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.