第3章 ストレッチモードを有効にした RHEL 8 から RHEL 9 へのアップグレードを伴う RHCS 5 から RHCS 7 へのアップグレード
ストレッチモードを有効にすることで、Red Hat Enterprise Linux 8 から Red Hat Enterprise Linux 9 への Red Hat Ceph Storage 5 から Red Hat Ceph Storage 7 へのアップグレードを実行できます。
最新バージョンの Red Hat Ceph Storage 7 にアップグレードする前に、最新バージョンの 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 キーのバックアップ。
手順
Cephadm シェルにログインします。
例
[ceph: root@host01 /]# cephadm shell
[ceph: root@host01 /]# cephadm shellCopy to Clipboard Copied! Toggle word wrap Toggle overflow 管理ノードが再プロビジョニングされるときにクラスターを管理するには、クラスター内の 2 番目のノードに管理者としてラベルを付けます。
構文
ceph orch host label add HOSTNAME _admin
ceph orch host label add HOSTNAME _adminCopy 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_adminCopy to Clipboard Copied! Toggle word wrap Toggle overflow nooutフラグを設定します。例
[ceph: root@host01 /]# ceph osd set noout
[ceph: root@host01 /]# ceph osd set nooutCopy to Clipboard Copied! Toggle word wrap Toggle overflow ホストからすべてのデーモンをドレインします。
構文
ceph orch host drain HOSTNAME --force
ceph orch host drain HOSTNAME --forceCopy 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 --forceCopy to Clipboard Copied! Toggle word wrap Toggle overflow _no_scheduleラベルは、デプロイメントをブロックするホストに自動的に適用されます。ストレージクラスターからすべてのデーモンが削除されているかどうかを確認します。
構文
ceph orch ps HOSTNAME
ceph orch ps HOSTNAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow 例
[ceph: root@host01 /]# ceph orch ps host02
[ceph: root@host01 /]# ceph orch ps host02Copy to Clipboard Copied! Toggle word wrap Toggle overflow デバイスを消去して、ドレインされているホストに OSD が存在する場合、ホストが再度追加されたときに、そのホストを使用して OSD を再デプロイメントできるようにします。
構文
ceph orch device zap HOSTNAME DISK --force
ceph orch device zap HOSTNAME DISK --forceCopy 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-host02Copy to Clipboard Copied! Toggle word wrap Toggle overflow OSD の削除のステータスを確認します。
例
[ceph: root@host01 /]# ceph orch osd rm status
[ceph: root@host01 /]# ceph orch osd rm statusCopy to Clipboard Copied! Toggle word wrap Toggle overflow OSD に配置グループ (PG) が残っていない場合、OSD は廃止され、ストレージクラスターから削除されます。
クラスターからホストを削除します。
構文
ceph orch host rm HOSTNAME --force
ceph orch host rm HOSTNAME --forceCopy 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 --forceCopy to Clipboard Copied! Toggle word wrap Toggle overflow - RHEL 8 から RHEL 9 へのアップグレード の説明に従って、RHEL 8 から RHEL 9 にそれぞれのホストを再プロビジョニングします。
--limitオプションを指定して、プリフライト Playbook を実行します。構文
ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --limit NEWHOST_NAME
ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --limit NEWHOST_NAMECopy 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 host02Copy to Clipboard Copied! Toggle word wrap Toggle overflow プリフライト Playbook は、新しいホストに
podman、lvm2、chronyd、およびcephadmをインストールします。インストールが完了すると、cephadmは/usr/sbin/ディレクトリーに配置されます。クラスターの SSH 公開鍵をフォルダーにデプロイメントします。
構文
ceph cephadm get-pub-key ~/PATH
ceph cephadm get-pub-key ~/PATHCopy 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.pubCopy 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_2Copy 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@host02Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: 削除されたホストにモニターデーモンがある場合は、クラスターにホストを追加する前に、デプロイメントをモニターするために
--unmanagedフラグを追加してください。構文
ceph orch apply mon PLACEMENT --unmanaged
ceph orch apply mon PLACEMENT --unmanagedCopy 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=LABELSCopy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: 削除されたホストに元々デプロイされていたモニターデーモンがあった場合は、タイブレーカーを新しいモニターに交換する で説明されているように、ロケーション属性を使用してモニターデーモンを手動で追加し直す必要があります。
構文
ceph mon add HOSTNAME IP LOCATION
ceph mon add HOSTNAME IP LOCATIONCopy 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=DC2Copy to Clipboard Copied! Toggle word wrap Toggle overflow 構文
ceph orch daemon add mon HOSTNAME
ceph orch daemon add mon HOSTNAMECopy 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-host02Copy to Clipboard Copied! Toggle word wrap Toggle overflow
再プロビジョニングされたホストのデーモンが同じ ceph バージョンで正常に実行されていることを確認します。
構文
ceph orch ps
ceph orch psCopy to Clipboard Copied! Toggle word wrap Toggle overflow モニターデーモンの配置を
managedに戻します。構文
ceph orch apply mon PLACEMENT
ceph orch apply mon PLACEMENTCopy to Clipboard Copied! Toggle word wrap Toggle overflow すべてのホストに対して上記の手順を繰り返します。
- .Arbiter モニターをホストからドレインまたは削除することはできません。そのため、arbiter mon を別の tie-breaker ノードに再プロビジョニングしてから、タイブレーカーを新しいモニターに交換する で説明されているように、ホストからドレインまたは削除する必要があります。
- 同じアプローチに従って管理ノードを再プロビジョニングし、2 番目の管理ノードを使用してクラスターを管理します。
- バックアップファイルをノードに再度追加します。
-
.2 番目の管理ノードを使用して、クラスターに管理ノードを再び追加します。
monデプロイメントをunmanagedに設定します。 - タイブレーカーを新しいモニターに置き換える に従って、古い arbiter mon を再度追加し、前に作成した一時的な mon を削除します。
nooutフラグの設定を解除します。構文
ceph osd unset noout
ceph osd unset nooutCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Ceph のバージョンとクラスターのステータスを確認して、Red Hat Enterprise Linux のアップグレード後に、すべてのデーモンが期待どおりに動作していることを確認します。
- cephadm を使用した Red Hat Ceph Storage クラスターのアップグレード に従って、Red Hat Ceph Storage 5 から Red Hat Ceph Storage 7 へのアップグレードを実行します。