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