OpenShift Container Storage の更新
クラスターおよびストレージ管理者の手順
概要
第1章 OpenShift Container Storage 更新プロセスの概要
Red Hat OpenShift Container Storage およびそのコンポーネントを (4.5 と 4.6 間などのマイナーリリース間、または 4.6.0 と 4.6.1 間などのバッチ更新間でアップグレードできます。
OpenShift Container Storage の異なる部分を特定の順序でアップグレードする必要があります。
- OpenShift Container Platform の クラスターの更新 ドキュメントに従って OpenShift Container Platform を更新します。
OpenShift Container Storage を更新します。
お使いのセットアップに適したプロセスを使用して、OpenShift Container Storage Operator を更新します。
- 更新のために非接続またはプロキシー環境を準備するには、Operator Lifecycle Manager を制限されたネットワーク で使用するための Operator ガイドを参照してください。
- 内部モードでの OpenShift Container Storage の更新
- 外部モードでの OpenShift Container Storage の更新
ローカルストレージを使用する場合:
ローカルストレージ Operator を更新します。
不明な場合は、Checking for Local Storage Operator deployments を参照してください。
ローカルストレージがサポートするクラスターの 更新後の設定変更を実行します。
詳細は、ローカルストレージでサポートされるクラスターについての更新後の設定 について参照してください。
更新に関する考慮事項
開始する前に、以下の重要な考慮事項を確認してください。
Red Hat では、Red Hat OpenShift Container Storage で同じバージョンの Red Hat OpenShift Container Platform を使用することを推奨しています。
OpenShift Container Platform および OpenShift Container Storage のサポートされる組み合わせについての詳細は、相互運用性マトリックス を参照してください。
- ローカルストレージ Operator は、ローカルストレージ Operator のバージョンが Red Hat OpenShift Container Platform のバージョンと一致する場合にのみ完全にサポートされます。
第2章 OpenShift Container Storage アップグレードチャネルおよびリリース
OpenShift Container Platform 4.1 で、Red Hat はクラスターのアップグレードの適切なリリースバージョンを推奨するためにチャネルという概念を導入しました。アップグレードのペースを制御することで、これらのアップグレードチャネルからアップグレードストラテジーを選択することができます。OpenShift Container Storage は、OpenShift Container Platform の Operator としてデプロイされるため、複数のチャネルに修正を提供し、アップグレードのペースを制御するための同じストラテジーに従います。アップグレードチャネルは OpenShift Container Storage のマイナーバージョンに関連付けられます。たとえば、OpenShift Container Storage 4.6 アップグレードチャネルでは 4.5 から 4.6 へのアップグレードおよび 4.6 内のアップグレードが推奨されます。4.7 以降のリリースへのアップグレードは推奨されていません。このストラテジーにより、管理者は OpenShift Container Storage の次のマイナーバージョンへのアップグレードに関して明確な決定を行うことができます。
アップグレードチャネルはリリースの選択のみを制御し、インストールするクラスターのバージョンには影響を与えません。ocs-operator
はインストールされる OpenShift Container Storage のバージョンを決定します。追加設定なしで、OpenShift Container Platform との互換性を維持しながら、最新の OpenShift Container Storage リリースを常にインストールします。そのため、OpenShift Container Platform 4.6 では、OpenShift Container Storage 4.6 はインストールできる最新バージョンになります。
OpenShift Container Storage のアップグレードは、互換性と相互運用性が OpenShift Container Platform で維持されるように OpenShift Container Platform のアップグレードと連動します。OpenShift Container Storage 4.6 では、OpenShift Container Platform 4.5、4.6、および 4.7 がサポートされます。OpenShift Container Platform 4.5 および 4.7 は、OpenShift Container Platform との後方互換性を維持するためにサポートされます。OpenShift Container Storage のバージョンを OpenShift Container Platform と同じにしておくと、そのリリースのすべての機能やエンハンスメントを活用できます。
OpenShift Container Platform 4.6 は以下のアップグレードチャネルを提供します。
-
stable-4.6
eus-4.6
(4.6 を実行する場合にのみ利用可能)- stable-4.6 チャネル
-
新規バージョンの GA 後、 マイナーバージョンに対応する stable チャネルが、アップグレードに使用できる新しいイメージで更新されます。
stable-4.6
チャネルを使用すると OpenShift Container Storage 4.5 からのアップグレードや 4.6 内のアップグレードが可能です。 - eus-4.6 チャネル
stable チャネルのほかに、OpenShift Container Platform の特定のマイナーバージョンは Extended Update Support (延長更新サポート、EUS) を提供します。これらの EUS バージョンでは、プレミアムサブスクリプションをお持ちのお客様の場合、メンテナーンスフェーズを 14 カ月に拡張されています。現時点で、OpenShift Container Storage 4.6 は EUS が適用される唯一のマイナーバージョンです。
OpenShift Container Platform 4.6 が EUS フェーズに移行するまで stable-4.6 と eus-4.6 チャネル間に相違はありませんが、 EUS チャネルが利用可能になり次第、これに切り換えることができます。OpenShift Container Platform 4.6 がライフサイクルの EUS フェーズに移行すると、stable-4.6 チャネルは後続の z-stream 更新を受信しなくなります。EUS チャネルに排他的なバージョンにアップグレードした後に、そのクラスターは次の EUS バージョンへのアップグレードが利用可能になるまでマイナーバージョンのアップグレードの対象ではなくなります。次に予定される EUS バージョンは 4.10 で、該当バージョンへのアップグレードには、4.6 から 4.7、4.8、4.9、4.10 の順など、バージョンの連続するセットが必要になります。
さらに、クラスターがサポートされるバージョンの OpenShift Container Platform 4.6 を実行している場合にのみ EUS チャネルに切り替えることができます。
最後に、EUS にのみ限定されている 4.6 バージョンをインストールする場合、アップグレードが 4.10 に提供されるまで、後続のマイナーバージョンにアップグレードすることはできません。
第3章 内部モードでの OpenShift Container Storage の更新
以下の手順に従って、内部モードでデプロイされた OpenShift Container Storage クラスターを更新します。
3.1. 内部モードでの OpenShift Container Storage Operator の自動更新の有効化
以下の手順を使用して、OpenShift Container Platform で OpenShift Container Storage Operator の自動の更新承認を有効にします。
前提条件
- Status カードの Persistent Storage で、OCS Cluster および Data Resiliency に緑色のチェックマークが付いていることを確認します。
-
Status カードの Object Service で、Object Service および Data Resiliency の両方が
Ready
状態 (緑のチェックマーク) にあることを確認します。 - OpenShift Container Platform クラスターをバージョン 4.5.X または 4.6.Y に更新する場合、クラスターの更新 を参照してください。
Red Hat OpenShift Container Storage チャネルを
stable-4.5
からstable-4.6
に切り替えます。チャネルの詳細は、OpenShift Container Storage を参照してください。注記マイナーバージョンを更新する場合 (例: 4.5 から 4.6 に更新) にのみチャネルを切り換える必要があり、4.6 のバッチの更新間に更新する場合 (例: 4.6.0 から 4.6.1 に更新) はチャネルを切り換える必要はありません。
Operator Pod を含むすべての OpenShift Container Storage Pod が
openshift-storage namespace
でRunning
状態にあることを確認します。Pod の状態を確認するには、OpenShift Web コンソールの左側のペインから Workloads → Pods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。
- 更新時間はクラスターで実行される OSD の数によって異なるため、Openshift Container Storage 更新プロセスを完了するのに十分な時間を確保してください。
手順
- OpenShift Web コンソールにログインします。
- Operators → Installed Operators をクリックします。
-
openshift-storage
プロジェクトを選択します。 - OpenShift Container Storage Operator 名をクリックします。
- Subscription タブをクリックしてから、Approval の下にあるリンクをクリックします。
- Automatic (default) を選択し、Save をクリックします。
Upgrade Status に応じて以下ののいずれかを実行します。
Upgrade Status には、requires approval と 表示されます。
注記Upgrade status には、新規 OpenShift Container Storage バージョンがチャネルですでに検知され、承認ストラテジーが更新時に Manual から Automatic に変更されている場合に requires approval が表示されます。
- Install Plan リンクをクリックします。
- InstallPlan Details ページで、Preview Install Plan をクリックします。
- インストール計画を確認し、Approve をクリックします。
- Status が Unknown から Created に変更されるまで待機します。
- Operators → Installed Operators をクリックします。
-
openshift-storage
プロジェクトを選択します。 - Status が Up to date に変更するまで待機します。
Upgrade Status には、requires approval は 表示されません。
- 更新が開始するまで待機します。これには、最長 20 分の時間がかかる可能性があります。
- Operators → Installed Operators をクリックします。
-
openshift-storage
プロジェクトを選択します。 - Status が Up to date に変更するまで待機します。
検証手順
- Status カードで Overview → Persistent Storage タブをクリックし、OCS Cluster および Data Resiliency で正常であることを示す緑色のチェックマークが表示されていることを確認します。
-
Overview → Object Service タブをクリックし、Status カードで、Object Service と Data Resiliency の両方が正常なことを示す
Ready
状態 (Green tick) であることを確認します。 Operators → Installed Operators → OpenShift Container Storage Operator をクリックします。Storage Cluster で、クラスターサービスのステータスが
Ready
であることを確認します。注記OpenShift Container Storage バージョン 4.5 から 4.6 に更新された後も、
Version
フィールドには依然として 4.5 が表示されます。これは、ocs-operator
がこのフィールドで表示される文字列を更新しないためです。Operator Pod を含むすべての OpenShift Container Storage Pod が
openshift-storage namespace
でRunning
状態にあることを確認します。Pod の状態を表示するには、Workloads → Pods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。
- 検証手順が失敗した場合は、Red Hat サポートにお問い合わせ ください。
関連情報
OpenShift Container Storage の更新中に問題が発生した場合は、トラブルシューティングガイドの トラブルシューティングで一般に必要になるログ セクションを参照してください。
3.2. 内部モードでの OpenShift Container Storage Operator の手動による更新
以下の手順を使用して、インストール計画に手動の承認を指定し、OpenShift Container Storage Operator を更新します。
前提条件
- Status カードの Persistent Storage で、OCS Cluster および Data Resiliency に緑色のチェックマークが付いていることを確認します。
-
Status カードの Object Service で、Object Service および Data Resiliency の両方が
Ready
状態 (緑のチェックマーク) にあることを確認します。 - OpenShift Container Platform クラスターをバージョン 4.5.X または 4.6.Y に更新する場合、クラスターの更新 を参照してください。
Red Hat OpenShift Container Storage チャネルを
stable-4.5
からstable-4.6
に切り替えます。チャネルの詳細は、OpenShift Container Storage を参照してください。注記マイナーバージョンを更新する場合 (例: 4.5 から 4.6 に更新) にのみチャネルを切り換える必要があり、4.6 のバッチの更新間に更新する場合 (例: 4.6.0 から 4.6.1 に更新) はチャネルを切り換える必要はありません。
Operator Pod を含むすべての OpenShift Container Storage Pod が
openshift-storage namespace
でRunning
状態にあることを確認します。Pod の状態を確認するには、OpenShift Web コンソールの左側のペインから Workloads → Pods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。
- 更新時間はクラスターで実行される OSD の数によって異なるため、Openshift Container Storage 更新プロセスを完了するのに十分な時間を確保してください。
手順
- OpenShift Web コンソールにログインします。
- Operators → Installed Operators をクリックします。
-
openshift-storage
プロジェクトを選択します。 - OpenShift Container Storage Operator 名をクリックします。
- Subscription タブをクリックしてから、Approval の下にあるリンクをクリックします。
- Manual を選択し、Save をクリックします。
- Upgrade Status が Upgrading に変更するまで待機します。
- Upgrade Status に requires approval が表示される場合は、requires approval をクリックします。
- InstallPlan Details ページで、Preview Install Plan をクリックします。
- インストール計画を確認し、Approve をクリックします。
- Status が Unknown から Created に変更されるまで待機します。
- Operators → Installed Operators をクリックします。
-
openshift-storage
プロジェクトを選択します。 - Status が Up to date に変更するまで待機します。
検証手順
- Status カードで Overview → Persistent Storage タブをクリックし、OCS Cluster および Data Resiliency で正常であることを示す緑色のチェックマークが表示されていることを確認します。
-
Overview → Object Service タブをクリックし、Status カードで、Object Service と Data Resiliency の両方が正常なことを示す
Ready
状態 (Green tick) であることを確認します。 Operators → Installed Operators → OpenShift Container Storage Operator をクリックします。Storage Cluster で、クラスターサービスのステータスが
Ready
であることを確認します。注記OpenShift Container Storage バージョン 4.5 から 4.6 に更新された後も、
Version
フィールドには依然として 4.5 が表示されます。これは、ocs-operator
がこのフィールドで表示される文字列を更新しないためです。Operator Pod を含むすべての OpenShift Container Storage Pod が
openshift-storage namespace
でRunning
状態にあることを確認します。Pod の状態を確認するには、OpenShift Web コンソールの左側のペインから Workloads → Pods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。
- 検証手順が失敗した場合は、Red Hat サポートにお問い合わせ ください。
関連情報
OpenShift Container Storage の更新中に問題が発生した場合は、トラブルシューティングガイドの トラブルシューティングで一般に必要になるログ セクションを参照してください。
第4章 外部モードでの OpenShift Container Storage の更新
以下の手順に従って、外部モードでデプロイされた OpenShift Container Storage クラスターを更新します。
Red Hat OpenShift Container Storage Operator をアップグレードしても、外部の Red Hat Ceph Storage クラスターはアップグレードされません。これは、OpenShift Container Platform で実行されている Red Hat OpenShift Container Storage サービスのみをアップグレードします。
外部の Red Hat Ceph Storage クラスターをアップグレードするには、Red Hat Ceph Storage の管理者にお問い合わせください。
4.1. 外部モードでの OpenShift Container Storage Operator の自動更新の有効化
以下の手順を使用して、OpenShift Container Platform で OpenShift Container Storage Operator の自動の更新承認を有効にします。
OpenShift Container Storage を更新しても、外部の Red Hat Ceph Storage クラスターは更新されません。
前提条件
- 外部クラスターには、Red Hat Ceph Storage バージョン 4.2z1 以降が必要です。詳細は、この Red Hat Ceph Storage リリースおよび対応する Ceph パッケージバージョンについてのナレッジベースのアーティクル を参照してください。
- OpenShift Container Platform クラスターをバージョン 4.5.X または 4.6.Y に更新する場合、クラスターの更新 を参照してください。
Red Hat OpenShift Container Storage チャネルを
stable-4.5
からstable-4.6
に切り替えます。チャネルの詳細は、OpenShift Container Storage を参照してください。注記マイナーバージョンを更新する場合 (例: 4.5 から 4.6 に更新) にのみチャネルを切り換える必要があり、4.6 のバッチの更新間に更新する場合 (例: 4.6.0 から 4.6.1 に更新) はチャネルを切り換える必要はありません。
Operator Pod を含むすべての OpenShift Container Storage Pod が
openshift-storage namespace
でRunning
状態にあることを確認します。Pod の状態を確認するには、OpenShift Web コンソールの左側のペインから Workloads → Pods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。
- Status カードの Persistent Storage で、OCS Cluster に緑色のチェックマークが付いていることを確認します。
-
Status カードの Object Service で、Object Service および Data Resiliency の両方が
Ready
状態 (緑のチェックマーク) にあることを確認します。 - Openshift Container Storage の更新プロセスを完了するのに十分時間があることを確認します。
手順
- OpenShift Web コンソールにログインします。
- Operators → Installed Operators をクリックします。
-
openshift-storage
プロジェクトを選択します。 - OpenShift Container Storage Operator 名をクリックします。
- Subscription タブをクリックしてから、Approval の下にあるリンクをクリックします。
- Automatic (default) を選択し、Save をクリックします。
Upgrade Status に応じて以下ののいずれかを実行します。
アップグレードのステータスには、requires approval と 表示されます。
注記Upgrade status には、新規 OpenShift Container Storage バージョンがチャネルですでに検知され、承認ストラテジーが更新時に Manual から Automatic に変更されている場合に requires approval が表示されます。
- Install Plan リンクをクリックします。
- InstallPlan Details ページで、Preview Install Plan をクリックします。
- インストール計画を確認し、Approve をクリックします。
- Status が Unknown から Created に変更されるまで待機します。
- Operators → Installed Operators をクリックします。
-
openshift-storage
プロジェクトを選択します。 - Status が Up to date に変更するまで待機します。
アップグレードステータスには 、requires approval は 表示されません。
- 更新が開始するまで待機します。これには、最長 20 分の時間がかかる可能性があります。
- Operators → Installed Operators をクリックします。
-
openshift-storage
プロジェクトを選択します。 - Status が Up to date に変更するまで待機します。
検証手順
- Status カードで Overview → Persistent Storage タブをクリックし、OCS Cluster に正常であることを示す緑色のチェックマークが表示されていることを確認します。
-
Overview → Object Service タブをクリックし、Status カードで、Object Service と Data Resiliency の両方が正常なことを示す
Ready
状態 (Green tick) であることを確認します。 Operators → Installed Operators → OpenShift Container Storage Operator をクリックします。Storage Cluster で、クラスターサービスのステータスが
Ready
であることを確認します。注記OpenShift Container Storage バージョン 4.5 から 4.6 に更新された後も、
Version
フィールドには依然として 4.5 が表示されます。これは、ocs-operator
がこのフィールドで表示される文字列を更新しないためです。Operator Pod を含むすべての OpenShift Container Storage Pod が
openshift-storage
namespace でRunning
状態にあることを確認します。Pod の状態を確認するには、OpenShift Web コンソールの左側のペインから Workloads → Pods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。
- 検証手順が失敗した場合は、Red Hat サポートにお問い合わせください。
次のステップ
- 監視を有効にして、Object Gateway (RGW) メトリクスを表示します。Enabling monitoring for the Object Service dashboard を参照してください。
4.2. 外部モードでの OpenShift Container Storage Operator の手動による更新
以下の手順を使用して、インストール計画に手動の承認を指定し、OpenShift Container Storage Operator を更新します。
OpenShift Container Storage を更新しても、外部の Red Hat Ceph Storage クラスターは更新されません。
前提条件
- 外部クラスターには、Red Hat Ceph Storage バージョン 4.2z1 以降が必要です。詳細は、この Red Hat Ceph Storage リリースおよび対応する Ceph パッケージバージョンについてのナレッジベースのアーティクル を参照してください。
- OpenShift Container Platform クラスターをバージョン 4.5.X または 4.6.Y に更新する場合、クラスターの更新 を参照してください。
Red Hat OpenShift Container Storage チャネルを
stable-4.5
からstable-4.6
に切り替えます。チャネルの詳細は、OpenShift Container Storage を参照してください。注記マイナーバージョンを更新する場合 (例: 4.5 から 4.6 に更新) にのみチャネルを切り換える必要があり、4.6 のバッチの更新間に更新する場合 (例: 4.6.0 から 4.6.1 に更新) はチャネルを切り換える必要はありません。
Operator Pod を含むすべての OpenShift Container Storage Pod が
openshift-storage
namespace でRunning
状態にあることを確認します。Pod の状態を確認するには、OpenShift Web コンソールの左側のペインから Workloads → Pods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。
- Status カードの Persistent Storage で、OCS Cluster に緑色のチェックマークが付いていることを確認します。
-
Status カードの Object Service で、Object Service および Data Resiliency の両方が
Ready
状態 (緑のチェックマーク) にあることを確認します。 - Openshift Container Storage の更新プロセスを完了するのに十分時間があることを確認します。
手順
- OpenShift Web コンソールにログインします。
- Operators → Installed Operators をクリックします。
-
openshift-storage
プロジェクトを選択します。 - OpenShift Container Storage Operator 名をクリックします。
- Subscription タブをクリックしてから、Approval の下にあるリンクをクリックします。
- Manual を選択し、Save をクリックします。
- Upgrade Status が Upgrading に変更するまで待機します。
- Upgrade Status に requires approval が表示される場合は、requires approval をクリックします。
- InstallPlan Details ページで、Preview Install Plan をクリックします。
- インストール計画を確認し、Approve をクリックします。
- Status が Unknown から Created に変更されるまで待機します。
- Operators → Installed Operators をクリックします。
-
openshift-storage
プロジェクトを選択します。 - Status が Up to date に変更するまで待機します。
検証手順
- Status カードで Overview → Persistent Storage タブをクリックし、OCS Cluster に正常であることを示す緑色のチェックマークが表示されていることを確認します。
-
Overview → Object Service タブをクリックし、Status カードで、Object Service と Data Resiliency の両方が正常なことを示す
Ready
状態 (Green tick) であることを確認します。 -
Operators → Installed Operators → OpenShift Container Storage Operator をクリックします。Storage Cluster で、クラスターサービスのステータスが
Ready
であることを確認します。 Operator Pod を含むすべての OpenShift Container Storage Pod が
openshift-storage
namespace でRunning
状態にあることを確認します。Pod の状態を確認するには、OpenShift Web コンソールの左側のペインから Workloads → Pods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。
注記OpenShift Container Storage バージョン 4.5 から 4.6 に更新された後も、
Version
フィールドには依然として 4.5 が表示されます。これは、ocs-operator
がこのフィールドで表示される文字列を更新しないためです。- 検証手順が失敗した場合は、Red Hat サポートにお問い合わせください。
次のステップ
- 監視を有効にして、Object Gateway (RGW) メトリクスを表示します。Enabling monitoring for the Object Service dashboard を参照してください。
4.3. Object Service ダッシュボードのモニターリングの有効化
OpenShift Container Storage 4.6 の Object Service ダッシュボードで Object Gateway (RGW) メトリクスを表示するには、モニターリングを有効にする必要があります。Object Service ダッシュボードの詳細は、 Object Service dashboard indicators および Metrics in the Object Service dashboard を参照してください。
前提条件
- OpenShift Container Platform クラスターを 4.6.z の最新の安定したリリースに更新する場合は、クラスターの更新 を参照してください。
- OpenShift Container Storage Operator がバージョン 4.6 にアップグレードされます。詳細は、Enabling automatic updates for OpenShift Container Storage operator in external mode または Manually updating OpenShift Container Storage operator in external mode を参照してください。
- Status カードの Persistent Storage で、OCS Cluster に緑色のチェックマークが付いていることを確認します。
-
Status カードの Object Service で、Object Service および Data Resiliency の両方が
Ready
状態 (緑のチェックマーク) にあることを確認します。 - Red Hat Ceph Storage には Ceph Dashboard がインストールされ、設定されている必要があり、Ceph Manager Prometheus エクスポーターにポート 9283 を使用する必要があります。
手順
Ceph クラスターの詳細を更新および抽出するための python スクリプトをダウンロードします。
- OpenShift Web コンソールで Operators → Installed Operators をクリックし、インストールされた Operator を表示します。
- Installed Operators ページで、インストールされた OpenShift Container Storage Operator の Provided APIs 列で Storage Cluster リンクをクリックします。
- Create Storage Cluster をクリックします。
- Mode を External に選択します。
- Connect to external cluster セクションで、Download Script リンクをクリックして、Ceph クラスターの詳細を抽出するために python スクリプトをダウンロードします。
- ストレージクラスターがすでに作成されているので Cancel をクリックします。
Red Hat Ceph Storage クラスターの OpenShift Container Storage クライアントのパーミッション制限を更新します。
- RHCS 管理者に問い合わせた上で、Red Hat Ceph Storage クラスターノードでダウンロードした python スクリプトを実行します。
スクリプトを実行するには、以下を実行します。
# python3 ceph-external-cluster-details-exporter.py --upgrade --run-as-user=<client_name_used_for_OCS_4.5_install>
--run-as-user
は、OpenShift Container Storage 4.5 のデプロイメント時に使用されるクライアント名を指定します。このオプションが OpenShift Container Storage 4.5 のデプロイメント時に使用されない場合、デフォルトのクライアント名client.healthchecker
が設定されます。ユーザーの更新されたパーミッションは以下のように設定されます。
caps: [mgr] allow command config caps: [mon] allow r, allow command quorum_status, allow command version caps: [osd] allow rwx pool=default.rgw.meta, allow r pool=.rgw.root, allow rw pool=default.rgw.control, allow rx pool=default.rgw.log, allow x pool=default.rgw.buckets.index
Object Service ダッシュボードのモニターリングを有効にするには、モニターリング情報を
openshift-storage
namespace の外部シークレットrook-ceph-external-cluster-details
に追加する必要があります。シークレットを更新する方法は 2 つあります。- CLI を使用してシークレットを更新する場合は、この Red Hat ナレッジベースアーティクル を参照してください。
OpenShift Web コンソールからシークレットを更新するには、以下の手順に従います。
手順 1v でダウンロードしたスクリプトを実行します。
# python3 ceph-external-cluster-details-exporter.py --rbd-data-pool-name <rbd block pool name> --monitoring-endpoint <ceph mgr prometheus exporter endpoint> --monitoring-endpoint-port <ceph mgr prometheus exporter port> --run-as-user <client_name_used_for_OCS_4.5_install> [optional arguments]
monitoring-endpoint
は、OpenShift Container Platform クラスターから到達できるアクティブなceph-mgr
の IP アドレスです。monitoring-endpoint-port
は--monitoring-endpoint
で指定されたceph-mgr
Prometheus エクスポーターに関連付けられるポートです。ポート 9283 のみが OpenShift Container Platform 4.6 でサポートされます。注記monitoring-endpoint
およびmonitoring-endpoint-port
を除くオプション引数を含むすべてのパラメーターが、外部モードでの OpenShift Container Storage 4.5 のデプロイメント時に使用したパラメーターと同じであることを確認します。前の手順でスクリプトを実行した後に生成された JSON 出力を保存します。出力例:
[{"name": "rook-ceph-mon-endpoints", "kind": "ConfigMap", "data": {"data": "xxx.xxx.xxx.xxx:xxxx", "maxMonId": "0", "mapping": "{}"}}, {"name": "rook-ceph-mon", "kind": "Secret", "data": {"admin-secret": "admin-secret", "fsid": "<fs-id>", "mon-secret": "mon-secret"}}, {"name": "rook-ceph-operator-creds", "kind": "Secret", "data": {"userID": "client.healthchecker", "userKey": "<user-key>"}}, {"name": "rook-csi-rbd-node", "kind": "Secret", "data": {"userID": "csi-rbd-node", "userKey": "<user-key>"}}, {"name": "ceph-rbd", "kind": "StorageClass", "data": {"pool": "ceph-rbd"}}, {"name": "monitoring-endpoint", "kind": "CephCluster", "data": {"MonitoringEndpoint": "xxx.xxx.xxx.xxx", "MonitoringPort": "xxxx"}}, {"name": "rook-csi-rbd-provisioner", "kind": "Secret", "data": {"userID": "csi-rbd-provisioner", "userKey": "<user-key>"}}, {"name": "rook-csi-cephfs-provisioner", "kind": "Secret", "data": {"adminID": "csi-cephfs-provisioner", "adminKey": "<admin-key>"}}, {"name": "rook-csi-cephfs-node", "kind": "Secret", "data": {"adminID": "csi-cephfs-node", "adminKey": "<admin-key>"}}, {"name": "cephfs", "kind": "StorageClass", "data": {"fsName": "cephfs", "pool": "cephfs_data"}}, {"name": "ceph-rgw", "kind": "StorageClass", "data": {"endpoint": "xxx.xxx.xxx.xxx:xxxx", "poolPrefix": "default"}}]
OpenShift Container Platform Web コンソールの
openshift-storage
namespace で Workloads → Secrets に移動し、rook-ceph-external-cluster-details
をクリックします。- Actions ドロップダウンメニューから、Edit Secret をクリックします。
Edit Key/Value Secret ページで、Value テキストボックスの横にある Browse をクリックし、以前に保存した JSON ファイルをアップロードします。
- Save をクリックします。
検証手順
- OpenShift Web コンソールから Home → Overview をクリックし、 Object Service タブをクリックします。
Status カード で、以下のイメージのように Object Service に緑色のチェックマークが表示されていることを確認します。
Performance カードのドロップダウンから Object Gateway(RGW) を選択し、メトリクスを表示します。
- Overview → Persistent Storage タブをクリックし、Status カードで OCS Cluster に緑色のチェックマークが付いていることを確認します。
第5章 更新後の設定の変更
すべての機能が予想通りに機能するように、更新後に追加の設定手順が必要になる場合があります。
5.1. ローカルストレージがサポートするクラスターの更新後の設定
Red Hat OpenShift Container Platform 4.6 以降で、ローカルストレージ Operator はローカルストレージを管理するための新規のカスタムリソースタイプを提供します。
-
LocalVolumeDiscovery
-
LocalVolumeSet
これらのリソースタイプは、以前のバージョンからの更新の一部として自動的に処理されないため、手動で作成する必要があります。
5.1.1. コマンドラインを使用した LocalVolumeDiscovery カスタムリソースの作成
LocalVolumeDiscovery
カスタムリソースを作成し、デバイス管理ユーザーインターフェイスがローカルデバイスの状態を検知できるようにし、クラスターノードで利用可能なデバイスについての情報を提供します。
前提条件
- OpenShift Container Platform クラスターへの管理者アクセス。
手順
ローカルストレージ Operator がインストールされているプロジェクトに切り替えます。
$ oc project local-storage-project
local-storage-project はローカルストレージプロジェクトの名前に置き換えます。
バージョン 4.5 以前では、デフォルトのローカルストレージプロジェクトの名前は
local-storage
です。バージョン 4.6 以降では、デフォルトのローカルストレージプロジェクトの名前はopenshift-local-storage
です。LocalVolumeDiscovery
カスタムリソースを定義します。たとえば、
local-volume-discovery.yaml
ファイルで以下を定義します。apiVersion: local.storage.openshift.io/v1alpha1 kind: LocalVolumeDiscovery metadata: name: auto-discover-devices spec: nodeSelector: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/hostname operator: In values: - worker1.example.com - worker2.example.com - worker3.example.com
LocalVolumeDiscovery
カスタムリソースを作成します。$ oc create -f local-volume-discovery.yaml
検証手順
- OpenShift Web コンソールにログインします。
- Compute → Node をクリックし、ノードの名前をクリックします。
- Disks タブをクリックして、そのノードで利用可能なデバイスが表示されることを確認します。
5.1.2. コマンドラインを使用した LocalVolumeSet カスタムリソースの作成
LocalVolumeSet
カスタムリソースを作成し、指定する条件に基づいて特定のストレージデバイスを永続ボリュームとして自動的にプロビジョニングします。永続ボリュームは、deviceInclusionSpec
の条件に一致する任意のノードで nodeSelector
の条件準に一致するデバイスについて作成されます。
前提条件
- OpenShift Container Platform クラスターへの管理者アクセス。
手順
local-volume-set.yaml
ファイルでLocalVolumeSet
カスタムリソースを定義します。apiVersion: local.storage.openshift.io/v1alpha1 kind: LocalVolumeSet metadata: name: localblock spec: nodeSelector: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/hostname operator: In values: - worker1.example.com - worker2.example.com - worker3.example.com storageClassName: localblock volumeMode: Block maxDeviceCount: 10 # optional, limit devices provisioned per node deviceInclusionSpec: deviceTypes: # list of types to allow - disk - part # omit this to use only whole devices deviceMechanicalProperty: - NonRotational minSize: 100Gi # optional, minimum size of device to allow maxSize: 100Ti # optional, maximum size of device to allow models: # (optional) list of models to allow - SAMSUNG - Crucial_CT525MX3 vendors: # (optional) list of device vendors to allow - ATA - ST2000LM
上記の定義では、
worker1
、worker2
、worker3
から、ローテーションされないデバイスの特定モデルにあるディスク全体またはパーティションの内、サイズが 100 GB から 100 TB で、指定のベンダーが提供しているものを選択します。localblock
ストレージクラスが作成され、永続ボリュームが検出されたデバイスからプロビジョニングされます。重要minSize
に適切な値を選択し、システムパーティションが選択されないようにします。LocalVolumeSet
を作成します。$ oc create -f local-volume-set.yaml
検証手順
以下のコマンドを使用して、
deviceInclusionSpec
に一致するデバイスの永続ボリュームのプロビジョニングを追跡します。永続ボリュームをプロビジョニングするのに数分かかる場合があります。$ oc describe localvolumeset localblock [...] Status: Conditions: Last Transition Time: 2020-11-17T05:03:32Z Message: DiskMaker: Available, LocalProvisioner: Available Status: True Type: DaemonSetsAvailable Last Transition Time: 2020-11-17T05:03:34Z Message: Operator reconciled successfully. Status: True Type: Available Observed Generation: 1 Total Provisioned Device Count: 4 Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal Discovered 2m30s (x4 localvolumeset- ip-10-0-147-124.us-east- NewDevice over 2m30s) symlink-controller 2.compute.internal - found possible matching disk, waiting 1m to claim Normal FoundMatch 89s (x4 localvolumeset- ip-10-0-147-124.us-east- ingDisk over 89s) symlink-controller 2.compute.internal - symlinking matching disk
プロビジョニングされた永続ボリュームの状態を確認します。
$ oc get pv ACCESS RECLAIM STORAGE NAME CAPACITY MODES POLICY STATUS CLASS AGE local-pv- 500Gi RWO Delete Available localblock 7m48s 3584969f local-pv- 500Gi RWO Delete Available localblock 7m48s 3aee84fa local-pv- 500Gi RWO Delete Available localblock 7m48s 644d09ac local-pv- 500Gi RWO Delete Available localblock 7m48s c73cee1
5.1.3. アノテーションの追加
以下の手順を使用して、以前のバージョンから OpenShift Container Storage 4.6 へのアップグレード時に、アノテーションをストレージクラスターに追加し、ユーザーインターフェイスを使用して、障害のあるストレージデバイスを交換できるようにします。
手順
- OpenShift Container Platform Web コンソールにログインします。
- Home → Search をクリックします。
- Resources で StorageCluster を検索し、それをクリックします。
-
ocs-storagecluster
の横にあるアクションメニュー (⋮) → Edit annotations をクリックします。 -
KEY と VALUE にそれぞれ
cluster.ocs.openshift.io/local-devices
とtrue
を追加します。 - Save をクリックします。