14.2. 外部 Red Hat Ceph Storage クラスター環境
Red Hat Ceph Storage クラスターが環境内の Red Hat OpenStack Platform デプロイメントの外部にある場合は、次のタスクを実行します。
14.2.1. Red Hat Ceph Storage コンテナーイメージの更新
container-image-prepare.yaml
ファイルは、ContainerImagePrepare
パラメーターを含むファイルであり、Red Hat Ceph Storage コンテナーを定義します。このファイルは、アンダークラウドとオーバークラウドのコンテナーイメージを取得するルールを定義するために、tripleo-container-image prepare
コマンドで使用します。環境を更新する前に、このファイルを正しいイメージバージョンで更新してください。
手順
-
コンテナー準備ファイルを見つけます。このファイルのデフォルト名は、
containers-prepare-parameter.yaml
です。 - コンテナー準備ファイルを編集します。
ceph_tag
パラメーターを見つけます。現在のエントリーは次の例のようになっているはずです。ceph_namespace: registry.redhat.io ceph_image: rhceph-6-rhel9 ceph_tag: '6'
Red Hat Ceph Storage 6 の
ceph_tag
パラメーターを更新します。ceph_namespace: registry.redhat.io ceph_image: rhceph-7-rhel9 ceph_tag: '7'
containers-image-prepare.yaml
ファイルを編集し、Red Hat Ceph モニタリングスタックコンテナー関連のパラメーターを次の内容に置き換えます。ceph_alertmanager_image: ose-prometheus-alertmanager ceph_alertmanager_namespace: registry.redhat.io/openshift4 ceph_alertmanager_tag: v4.15 ceph_grafana_image: grafana-rhel9 ceph_grafana_namespace: registry.redhat.io/rhceph ceph_grafana_tag: latest ceph_node_exporter_image: ose-prometheus-node-exporter ceph_node_exporter_namespace: registry.redhat.io/openshift4 ceph_node_exporter_tag: v4.15 ceph_prometheus_image: ose-prometheus ceph_prometheus_namespace: registry.redhat.io/openshift4 ceph_prometheus_tag: v4.15
- ファイルを保存します。
14.2.2. container image prepare の実行
director コンテナー準備コマンドを実行して、コンテナーイメージの準備プロセスを完了します。これにより、オーバークラウド用のすべてのコンテナーイメージ設定が準備され、最新の Red Hat Ceph Storage 6 コンテナーイメージが取得されます。
Red Hat Satellite Server を使用して Red Hat OpenStack Platform (RHOSP)環境の RPM およびコンテナーイメージをホストする場合は、この手順を実行しないでください。Satellite を更新して Red Hat Ceph Storage 7 コンテナーイメージを追加し、containers-prepare-parameter.yaml
ファイルを更新して、Satellite Server でホストされているコンテナーイメージの URL を参照します。
手順
-
アンダークラウドホストに
stack
ユーザーとしてログインします。 stackrc
アンダークラウド認証情報ファイルを入手します。$ source ~/stackrc
コンテナー準備コマンドを実行します。
$ openstack tripleo container image prepare -e <container_preparation_file>
-
<container_preparation_file>
は、ファイルの名前に置き換えます。デフォルトのファイルは、containers-prepare-parameter.yaml
です。
-
新しい Red Hat Ceph Storage イメージがアンダークラウドレジストリーに存在することを確認します。
$ openstack tripleo container image list -f value | awk -F '//' '/ceph/ {print $2}'
新しい Red Hat Ceph Storage モニタリングスタックイメージがアンダークラウドレジストリーに存在することを確認します。
$ openstack tripleo container image list -f value | awk -F '//' '/grafana|prometheus|alertmanager|node-exporter/ {print $2}'
Red Hat Ceph Storage Dashboard が有効になっている場合は、新しい Red Hat モニタリングスタックイメージがアンダークラウドレジストリーに存在することを確認します。
$ openstack tripleo container image list -f value | awk -F '//' '/grafana|prometheus|alertmanager|node-exporter/ {print $2}'
14.2.3. Red Hat Ceph Storage 5 から 6 に移行する場合の NFS Ganesha のアップグレード
Red Hat Ceph Storage をリリース 4 から 5 にアップグレードする場合、NFS Ganesha は Orchestrator によって導入されません。そのため、NFS Ganesha は director の管理下に残り、手動でリリース 6 に移動する必要があります。
Red Hat Ceph Storage 5 ベースの NFS Ganesha と Red Hat Ceph Storage 6 クラスターの併用は、アップグレード期間中にのみサポートされます。Red Hat Ceph Storage クラスターを 6 にアップグレードしたら、リリース 6 ベースのコンテナーイメージを使用するように NFS Ganesha をアップグレードする必要があります。
この手順は、CephFS NFS を使用する Shared File Systems サービス (manila) を使用している環境にのみ適用されます。この環境では、NFS Ganesha に合わせた Red Hat Ceph Storage コンテナーのアップグレードが必須です。
手順
- コントローラーノードにログインします。
ceph-nfs
サービスを調べます。$ sudo pcs status | grep ceph-nfs
ceph-nfs systemd
ユニットを調べて、Red Hat Ceph Storage 5 のコンテナーイメージとタグが含まれていることを確認します。$ cat /etc/systemd/system/ceph-nfs@.service | grep -i container_image
次の内容を含む
/home/stack/ganesha_update_extravars.yaml
というファイルを作成します。tripleo_cephadm_container_image: <ceph_image_name> tripleo_cephadm_container_ns: <ceph_image_namespace> tripleo_cephadm_container_tag: <ceph_image_tag>
-
<ceph_image_name>
は、Red Hat Ceph Storage コンテナーイメージの名前に置き換えます。 -
<ceph_image_namespace>
は、Red Hat Ceph Storage コンテナーの名前空間の名前に置き換えます。 <ceph_image_tag>
は、Red Hat Ceph Storage コンテナータグの名前に置き換えます。たとえば、一般的な環境では、このファイルの内容として次の値が含まれます。
tripleo_cephadm_container_image: rhceph-7-rhel9 tripleo_cephadm_container_ns: undercloud-0.ctlplane.redhat.local:8787 tripleo_cephadm_container_tag: '7'
-
- ファイルを保存します。
ceph-update-genesha.yml
Playbook を実行します。追加のコマンドパラメーターとしてganesha_update_extravars.yaml
Playbook を指定します。ansible-playbook -i $HOME/overcloud-deploy/<stack>/config-download/<stack>/tripleo-ansible-inventory.yaml \ /usr/share/ansible/tripleo-playbooks/ceph-update-ganesha.yml \ -e @$HOME/overcloud-deploy/<stack>/config-download/<stack>/global_vars.yaml \ -e @$HOME/overcloud-deploy/<stack>/config-download/<stack>/cephadm/cephadm-extra-vars-heat.yml \ -e @$HOME/ganesha_update_extravars.yaml
-
<stack>
は、オーバークラウドスタックの名前に置き換えます。
-
ceph-nfs
サービスが実行されていることを確認します。$ sudo pcs status | grep ceph-nfs
ceph-nfs systemd
ユニットに Red Hat Ceph Storage 6 のコンテナーイメージとタグが含まれていることを確認します。$ cat /etc/systemd/system/ceph-nfs@.service | grep rhceph