第 3 章 在启用了扩展模式的将 RHCS 5 升级到 RHCS 7 到 RHEL 9 升级
您可以执行从 Red Hat Ceph Storage 5 升级到 Red Hat Ceph Storage 7,涉及 Red Hat Enterprise Linux 8 到启用了扩展模式的 Red Hat Enterprise Linux 9。
在升级到最新版本的 Red Hat Ceph Storage 7 之前,升级到 Red Hat Ceph Storage 5 的最新版本。
先决条件
- Red Hat Ceph Storage 5 on Red Hat Enterprise Linux 8,在启用了扩展模式的情况下运行了必要的主机和守护进程。
-
Ceph 二进制文件备份(
/usr/sbin/cephadm
)、ceph.pub (/etc/ceph
)和来自管理节点的 Ceph 集群的公共 SSH 密钥。
流程
登录到 Cephadm shell:
示例
[ceph: root@host01 /]# cephadm shell
[ceph: root@host01 /]# cephadm shell
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在重新置备 admin 节点时,将第二个节点标记为 admin 以管理集群。
语法
ceph orch host label add HOSTNAME _admin
ceph orch host label add HOSTNAME _admin
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph orch host label add host02_admin
[ceph: root@host01 /]# ceph orch host label add host02_admin
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 设置
noout
标志。示例
[ceph: root@host01 /]# ceph osd set noout
[ceph: root@host01 /]# ceph osd set noout
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 排空主机中的所有守护进程:
语法
ceph orch host drain HOSTNAME --force
ceph orch host drain HOSTNAME --force
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph orch host drain host02 --force
[ceph: root@host01 /]# ceph orch host drain host02 --force
Copy to Clipboard Copied! Toggle word wrap Toggle overflow _no_schedule
标签自动应用到阻止部署的主机。检查所有守护进程是否已从存储集群中移除:
语法
ceph orch ps HOSTNAME
ceph orch ps HOSTNAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph orch ps host02
[ceph: root@host01 /]# ceph orch ps host02
Copy to Clipboard Copied! Toggle word wrap Toggle overflow zap 设备,以便在主机排空时有 OSD,则它们可用于在主机重新添加时重新部署 OSD。
语法
ceph orch device zap HOSTNAME DISK --force
ceph orch device zap HOSTNAME DISK --force
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph orch device zap ceph-host02 /dev/vdb --force zap successful for /dev/vdb on ceph-host02
[ceph: root@host01 /]# ceph orch device zap ceph-host02 /dev/vdb --force zap successful for /dev/vdb on ceph-host02
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 检查移除 OSD 的状态:
示例
[ceph: root@host01 /]# ceph orch osd rm status
[ceph: root@host01 /]# ceph orch osd rm status
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 当 OSD 上没有剩余的放置组(PG)时,该 OSD 会停用并从存储集群中移除。
从集群中删除主机:
语法
ceph orch host rm HOSTNAME --force
ceph orch host rm HOSTNAME --force
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph orch host rm host02 --force
[ceph: root@host01 /]# ceph orch host rm host02 --force
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 将相应的主机从 RHEL 8 重新置备到 RHEL 9,如 从 RHEL 8 升级到 RHEL 9 所述。
使用
--limit
选项运行 preflight playbook:语法
ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --limit NEWHOST_NAME
ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --limit NEWHOST_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ansible-playbook -i hosts cephadm-preflight.yml --extra-vars "ceph_origin={storage-product}" --limit host02
[ceph: root@host01 /]# ansible-playbook -i hosts cephadm-preflight.yml --extra-vars "ceph_origin={storage-product}" --limit host02
Copy to Clipboard Copied! Toggle word wrap Toggle overflow preflight playbook 在新主机上安装
podman
、lvm2
、chronyd
和cephadm
。安装完成后,cephadm
驻留在/usr/sbin/
目录中。将集群的公共 SSH 密钥提取到文件夹:
语法
ceph cephadm get-pub-key ~/PATH
ceph cephadm get-pub-key ~/PATH
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph cephadm get-pub-key ~/ceph.pub
[ceph: root@host01 /]# ceph cephadm get-pub-key ~/ceph.pub
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 Ceph 集群的公共 SSH 密钥复制到重新置备的节点:
语法
ssh-copy-id -f -i ~/PATH root@HOST_NAME_2
ssh-copy-id -f -i ~/PATH root@HOST_NAME_2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ssh-copy-id -f -i ~/ceph.pub root@host02
[ceph: root@host01 /]# ssh-copy-id -f -i ~/ceph.pub root@host02
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 可选:如果移除的主机有一个 monitor 守护进程,则在将主机添加到集群前,请添加
--unmanaged
标志来监控部署。语法
ceph orch apply mon PLACEMENT --unmanaged
ceph orch apply mon PLACEMENT --unmanaged
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
再次将主机添加到集群中,并添加之前存在的标签:
语法
ceph orch host add HOSTNAME IP_ADDRESS --labels=LABELS
ceph orch host add HOSTNAME IP_ADDRESS --labels=LABELS
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 可选:如果移除的主机最初部署了一个监控器守护进程,则需要使用 location 属性手动添加 monitor 守护进程,如将 tiebreaker 替换为新的监控器 中所述。
语法
ceph mon add HOSTNAME IP LOCATION
ceph mon add HOSTNAME IP LOCATION
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph mon add ceph-host02 10.0.211.62 datacenter=DC2
[ceph: root@host01 /]# ceph mon add ceph-host02 10.0.211.62 datacenter=DC2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 语法
ceph orch daemon add mon HOSTNAME
ceph orch daemon add mon HOSTNAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph orch daemon add mon ceph-host02
[ceph: root@host01 /]# ceph orch daemon add mon ceph-host02
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证 re-provisioned 主机上的守护进程使用相同的 ceph 版本成功运行:
语法
ceph orch ps
ceph orch ps
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 monitor 守护进程放置重新设置为
managed
。语法
ceph orch apply mon PLACEMENT
ceph orch apply mon PLACEMENT
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 对所有主机重复上述步骤。
- .arbiter monitor 无法排空或从主机中删除。因此,需要将仲裁 mon 重新置备到另一个 tie-breaker 节点,然后从主机排空或删除,如将 tiebreaker 替换为新的监控器 中所述。
- 按照相同的方法重新置备 admin 节点,并使用第二个管理节点管理集群。
- 再次将备份文件添加到节点。
-
.再次使用第二个管理节点将 admin 节点添加到集群中。将
mon
部署设置为unmanaged
。 - 遵循将 tiebreaker 替换为新 monitor,以重新添加旧的仲裁 mon 并删除之前创建的临时 mon。
取消设置
noout
标志。语法
ceph osd unset noout
ceph osd unset noout
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 验证 Ceph 版本和集群状态,以确保所有 demons 在 Red Hat Enterprise Linux 升级后按预期工作。
- 按照 使用 cephadm 升级 Red Hat Ceph Storage 集群 来执行 Red Hat Ceph Storage 5 到 Red Hat Ceph Storage 7 升级。