Menu Close

OpenShift Container Storage の更新

Red Hat OpenShift Container Storage 4.7

クラスターおよびストレージ管理者の手順

概要

本書では、Red Hat OpenShift Container Storage を更新する方法について説明します。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、今後の複数のリリースで段階的に用語の置き換えを実施して参ります。詳細は、弊社 の CTO、Chris Wright のメッセージ を参照してください。

Red Hat ドキュメントへのフィードバック (英語のみ)

弊社のドキュメントについてのご意見をお聞かせください。ドキュメントの改善点があれば、ぜひお知らせください。フィードバックをお寄せいただくには、以下をご確認ください。

  • 特定の部分についての簡単なコメントをお寄せいただく場合は、以下をご確認ください。

    1. ドキュメントの表示が Multi-page HTML 形式になっていて、ドキュメントの右上端に Feedback ボタンがあることを確認してください。
    2. マウスカーソルで、コメントを追加する部分を強調表示します。
    3. そのテキストの下に表示される Add Feedback ポップアップをクリックします。
    4. 表示される手順に従ってください。
  • より詳細なフィードバックを行う場合は、Bugzilla のチケットを作成します。

    1. Bugzilla の Web サイトに移動します。
    2. Component で Documentation を選択します。
    3. Description フィールドに、ドキュメントの改善に関するご意見を記入してください。ドキュメントの該当部分へのリンクも記入してください。
    4. Submit Bug をクリックします。

第1章 OpenShift Container Storage 更新プロセスの概要

Red Hat OpenShift Container Storage およびそのコンポーネントを(4.6 と 4.7 間などのマイナーリリース間、または 4.7.0 と 4.7.1 間などのバッチ更新間でアップグレードできます。

OpenShift Container Storage の異なる部分を特定の順序でアップグレードする必要があります。

  1. OpenShift Container Platform の『クラスターの更新』ドキュメントに従って OpenShift Container Platform を更新します
  2. OpenShift Container Storage を更新します。

    1. 更新に非接続環境を準備する には、Operator Lifecycle Manager を制限されたネットワークで使用するための Operator ガイドを参照し、 Openshift Container Storage およびローカルストレージ Operator を使用している場合はこれらを更新できるようにします。
    2. お使いのセットアップに適したプロセスを使用して、OpenShift Container Storage Operator を更新します

    3. ローカルストレージを使用する場合:

      1. ローカルストレージ Operator を更新します

        不明な場合は、「Checking for Local Storage Operator deployments」を参照してください。

      2. ローカルストレージがサポートするクラスターについて 更新後の設定変更を実行します

        詳細は、ローカルストレージでサポートされるクラスターについての更新後の設定について参照してください。

更新についての留意事項

開始する前に、以下の重要な考慮事項を確認してください。

  • 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.7 アップグレードチャネルでは 4.6 から 4.7 リリースへのアップグレードおよび 4.7 内のアップグレードが推奨されます。4.8 以降のリリースへのアップグレードは推奨されていません。このストラテジーにより、管理者は OpenShift Container Storage の次のマイナーバージョンへのアップグレードに関して明確な決定を行うことができます。

アップグレードチャネルはリリースの選択のみを制御し、インストールするクラスターのバージョンには影響を与えません。ocs-operator はインストールする OpenShift Container Storage のバージョンを決定します。カスタマイズなしに、OpenShift Container Platform との互換性を維持するために、最新の OpenShift Container Storage リリースを常にインストールします。そのため、OpenShift Container Platform 4.7 では、OpenShift Container Storage 4.7 はインストールできる最新バージョンになります。

OpenShift Container Storage のアップグレードは OpenShift Container Platform のアップグレードに関連付けられ、互換性と相互運用性が OpenShift Container Platform で維持されるようになっています。OpenShift Container Storage 4.7 では、OpenShift Container Platform 4.7 および 4.8 がサポートされます。OpenShift Container Platform 4.8 は、OpenShift Container Platform との前方互換性の維持でサポートされます。OpenShift Container Storage のバージョンを OpenShift Container Platform と同じに維持し、そのリリースのすべての機能および拡張機能の利点を取得します。

OpenShift Container Platform 4.7 は以下のアップグレードチャネルを提供します。

  • stable-4.7

    stable-4.7 チャネル
    新規バージョンが一般に利用可能になると、マイナーバージョンに対応する安定したチャネルが、アップグレードに使用できる新しいイメージで更新されます。stable-4.7 チャネルを使用して、OpenShift Container Storage 4.6 からのアップグレードおよび 4.7 内のアップグレードを実行できます。

第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 ServiceData Resiliency の両方が Ready 状態(green tick)にあることを確認します。
  • OpenShift Container Platform クラスターをバージョン 4.7.Y に更新する場合、『クラスターの更新 』を参照してください。
  • Red Hat OpenShift Container Storage チャンネルを stable-4.6 から stable-4.7 に切り替えます。チャネルについての詳細は、「OpenShift Container Storage アップグレードチャネルおよびリリース 」を参照してください。

    注記

    マイナーバージョンを更新する場合(例: 4.6 から 4.7 に更新) にのみチャネルを切り換える必要があり、4.7 のバッチの更新間に更新する場合 (例: 4.7.0 から 4.7.1 に更新) はチャネルを切り換える必要はありません。

  • Operator Pod を含むすべての OpenShift Container Storage Pod が openshift-storage namespaceRunning 状態にあることを確認します。

    Pod の状態を確認するには、OpenShift Web コンソールの左側のペインから WorkloadsPods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。

  • 更新時間はクラスターで実行される OSD の数によって異なるため、Openshift Container Storage 更新プロセスを完了するのに十分な時間を確保してください。

手順

  1. OpenShift Web コンソールにログインします。
  2. OperatorsInstalled Operators をクリックします。
  3. openshift-storage プロジェクトを選択します。
  4. OpenShift Container Storage Operator 名をクリックします。
  5. Subscription タブをクリックしてから、Approval の下にあるリンクをクリックします。
  6. Automatic (default) を選択し、Save をクリックします。
  7. Upgrade Status に応じて以下ののいずれかを実行します。

    • Upgrade Status には、requires approval表示されます

      注記

      Upgrade status には、新規 OpenShift Container Storage バージョンがチャネルですでに検知され、承認ストラテジーが更新時に Manual から Automatic に変更されている場合に requires approval が表示されます。

      1. Install Plan リンクをクリックします。
      2. InstallPlan Details ページで、Preview Install Plan をクリックします。
      3. インストール計画を確認し、Approve をクリックします。
      4. StatusUnknown から Created に変更されるまで待機します。
      5. OperatorsInstalled Operators をクリックします。
      6. openshift-storage プロジェクトを選択します。
      7. StatusUp to date に変更するまで待機します。
    • Upgrade Status には、requires approval表示されません

      1. 更新が開始するまで待機します。これには、最長 20 分の時間がかかる可能性があります。
      2. OperatorsInstalled Operators をクリックします。
      3. openshift-storage プロジェクトを選択します。
      4. StatusUp to date に変更するまで待機します。
注記

NooBaa DB を MongoDB から PostgreSQL に移行するため、アップグレード中は Multicloud Object Gateway の停止が短期間予想されます。

検証手順

  1. Overview → Persistent Storage タブをクリックし、Status カードで OCS Cluster および Data Resiliency に正常であることを示す緑色のチェックマークが表示されていることを確認します。
  2. Overview → Object Service タブをクリックし、Status カードで、Object ServiceData Resiliency の両方が正常な状態にあることを示す Ready 状態(green tick)であることを確認します。
  3. OperatorsInstalled OperatorsOpenShift Container Storage Operator をクリックします。Storage Cluster で、クラスターサービスのステータスが Ready であることを確認します。

    注記

    OpenShift Container Storage バージョン 4.6 から 4.7 に更新された後も、Version フィールドには依然として 4.6 が表示されます。これは、ocs-operator がこのフィールドで表示される文字列を更新しないためです。

  4. Operator Pod を含むすべての OpenShift Container Storage Pod が openshift-storage namespaceRunning 状態にあることを確認します。

    Pod の状態を表示するには、WorkloadsPods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。

  5. 検証手順が失敗した場合は、 Red Hat サポートにお問い合わせください
注記

柔軟なスケーリング機能は、Red Hat OpenShift Container Storage 4.7 の新規デプロイメントでのみ利用できます。4.7 バージョンにアップグレードされたストレージクラスターは、柔軟なスケーリングをサポートしていません。

関連情報

OpenShift Container Storage の更新中に問題が発生した場合は、『トラブルシューティングガイド』の トラブルシューティングで一般に必要になるログについてのセクションを参照してください。

3.2. 内部モードでの OpenShift Container Storage Operator の手動による更新

以下の手順を使用して、インストール計画に手動の承認を指定し、OpenShift Container Storage Operator を更新します。

前提条件

  • Status カードの Persistent Storage で、OCS Cluster および Data Resiliency に緑色のチェックマークが表示されていることを確認します。
  • Status カードの Object Service で、Object ServiceData Resiliency の両方が Ready 状態(green tick)にあることを確認します。
  • OpenShift Container Platform クラスターをバージョン 4.7.Y に更新する場合、『クラスターの更新 』を参照してください。
  • Red Hat OpenShift Container Storage チャンネルを stable-4.6 から stable-4.7 に切り替えます。チャネルについての詳細は、「OpenShift Container Storage アップグレードチャネルおよびリリース 」を参照してください。

    注記

    マイナーバージョンを更新する場合(例: 4.6 から 4.7 に更新) にのみチャネルを切り換える必要があり、4.7 のバッチの更新間に更新する場合 (例: 4.7.0 から 4.7.1 に更新) はチャネルを切り換える必要はありません。

  • Operator Pod を含むすべての OpenShift Container Storage Pod が openshift-storage namespaceRunning 状態にあることを確認します。

    Pod の状態を確認するには、OpenShift Web コンソールの左側のペインから WorkloadsPods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。

  • 更新時間はクラスターで実行される OSD の数によって異なるため、Openshift Container Storage 更新プロセスを完了するのに十分な時間を確保してください。

手順

  1. OpenShift Web コンソールにログインします。
  2. OperatorsInstalled Operators をクリックします。
  3. openshift-storage プロジェクトを選択します。
  4. OpenShift Container Storage Operator 名をクリックします。
  5. Subscription タブをクリックしてから、Approval の下にあるリンクをクリックします。
  6. Manual を選択し、Save をクリックします。
  7. Upgrade StatusUpgrading に変更するまで待機します。
  8. Upgrade Statusrequires approval が表示される場合は、requires approval をクリックします。
  9. InstallPlan Details ページで、Preview Install Plan をクリックします。
  10. インストール計画を確認し、Approve をクリックします。
  11. StatusUnknown から Created に変更されるまで待機します。
  12. OperatorsInstalled Operators をクリックします。
  13. openshift-storage プロジェクトを選択します。
  14. StatusUp to date に変更するまで待機します。
注記

NooBaa DB を MongoDB から PostgreSQL に移行するため、アップグレード中は Multicloud Object Gateway の停止が短期間予想されます。

検証手順

  1. Overview → Persistent Storage タブをクリックし、Status カードで OCS Cluster および Data Resiliency に正常であることを示す緑色のチェックマークが表示されていることを確認します。
  2. Overview → Object Service タブをクリックし、Status カードで、Object ServiceData Resiliency の両方が正常な状態にあることを示す Ready 状態(green tick)であることを確認します。
  3. OperatorsInstalled OperatorsOpenShift Container Storage Operator をクリックします。Storage Cluster で、クラスターサービスのステータスが Ready であることを確認します。

    注記

    OpenShift Container Storage バージョン 4.6 から 4.7 に更新された後も、Version フィールドには依然として 4.6 が表示されます。これは、ocs-operator がこのフィールドで表示される文字列を更新しないためです。

  4. Operator Pod を含むすべての OpenShift Container Storage Pod が openshift-storage namespaceRunning 状態にあることを確認します。

    Pod の状態を確認するには、OpenShift Web コンソールの左側のペインから WorkloadsPods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。

  5. 検証手順が失敗した場合は、 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.7.y の最新の安定したリリースに更新する場合は、『クラスターの更新 』を参照してください。
  • Red Hat OpenShift Container Storage チャンネルを stable-4.6 から stable-4.7 に切り替えます。チャネルについての詳細は、「OpenShift Container Storage アップグレードチャネルおよびリリース 」を参照してください。

    注記

    マイナーバージョンを更新する場合(例: 4.6 から 4.7 に更新) にのみチャネルを切り換える必要があり、4.7 のバッチの更新間に更新する場合 (例: 4.7.0 から 4.7.1 に更新) はチャネルを切り換える必要はありません。

  • Operator Pod を含むすべての OpenShift Container Storage Pod が openshift-storage namespaceRunning 状態にあることを確認します。

    Pod の状態を確認するには、OpenShift Web コンソールの左側のペインから Workloads → Pods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。

  • Status カードの Persistent Storage で、OCS Cluster に緑色のチェックマークが表示されていることを確認します。
  • Status カードの Object Service で、Object ServiceData Resiliency の両方が Ready 状態(green tick)にあることを確認します。
  • Openshift Container Storage の更新プロセスを完了するのに十分時間があることを確認します。

手順

  1. OpenShift Web コンソールにログインします。
  2. OperatorsInstalled Operators をクリックします。
  3. openshift-storage プロジェクトを選択します。
  4. OpenShift Container Storage Operator 名をクリックします。
  5. Subscription タブをクリックしてから、Approval の下にあるリンクをクリックします。
  6. Automatic (default) を選択し、Save をクリックします。
  7. Upgrade Status に応じて以下ののいずれかを実行します。

    • アップグレードのステータスには、requires approval表示されます

      注記

      Upgrade status には、新規 OpenShift Container Storage バージョンがチャネルですでに検知され、承認ストラテジーが更新時に Manual から Automatic に変更されている場合に requires approval が表示されます。

      1. Install Plan リンクをクリックします。
      2. InstallPlan Details ページで、Preview Install Plan をクリックします。
      3. インストール計画を確認し、Approve をクリックします。
      4. StatusUnknown から Created に変更されるまで待機します。
      5. OperatorsInstalled Operators をクリックします。
      6. openshift-storage プロジェクトを選択します。
      7. StatusUp to date に変更するまで待機します。
    • アップグレードステータスには 、requires approval表示されません

      1. 更新が開始するまで待機します。これには、最長 20 分の時間がかかる可能性があります。
      2. OperatorsInstalled Operators をクリックします。
      3. openshift-storage プロジェクトを選択します。
      4. StatusUp to date に変更するまで待機します。
注記

NooBaa DB を MongoDB から PostgreSQL に移行するため、アップグレード中は Multicloud Object Gateway の停止が短期間予想されます。

検証手順

  1. Overview → Persistent Storage タブをクリックし、Status カードで OCS Cluster に正常であることを示す緑色のチェックマークが表示されていることを確認します。
  2. Overview → Object Service タブをクリックし、Status カードで、Object ServiceData Resiliency の両方が正常な状態にあることを示す Ready 状態(green tick)であることを確認します。
  3. OperatorsInstalled OperatorsOpenShift Container Storage Operator をクリックします。Storage Cluster で、クラスターサービスのステータスが Ready であることを確認します。

    注記

    OpenShift Container Storage バージョン 4.6 から 4.7 に更新された後も、Version フィールドには依然として 4.6 が表示されます。これは、ocs-operator がこのフィールドで表示される文字列を更新しないためです。

  4. Operator Pod を含むすべての OpenShift Container Storage Pod が openshift-storage namespace で Running 状態にあることを確認します。

    Pod の状態を確認するには、OpenShift Web コンソールの左側のペインから Workloads → Pods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。

  5. 検証手順が失敗した場合は、 Red Hat サポートにお問い合わせください

関連情報

OpenShift Container Storage の更新中に問題が発生した場合は、『トラブルシューティングガイド』の トラブルシューティングで一般に必要になるログについてのセクションを参照してください。

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.7.Y に更新する場合、『クラスターの更新 』を参照してください。
  • Red Hat OpenShift Container Storage チャンネルを stable-4.6 から stable-4.7 に切り替えます。チャネルについての詳細は、「OpenShift Container Storage アップグレードチャネルおよびリリース 」を参照してください。

    注記

    マイナーバージョンを更新する場合(例: 4.6 から 4.7 に更新) にのみチャネルを切り換える必要があり、4.7 のバッチの更新間に更新する場合 (例: 4.7.0 から 4.7.1 に更新) はチャネルを切り換える必要はありません。

  • Operator Pod を含むすべての OpenShift Container Storage Pod が openshift-storage namespace で Running 状態にあることを確認します。

    Pod の状態を確認するには、OpenShift Web コンソールの左側のペインから WorkloadsPods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。

  • Status カードの Persistent Storage で、OCS Cluster に緑色のチェックマークが表示されていることを確認します。
  • Status カードの Object Service で、Object ServiceData Resiliency の両方が Ready 状態(green tick)にあることを確認します。
  • Openshift Container Storage の更新プロセスを完了するのに十分時間があることを確認します。

手順

  1. OpenShift Web コンソールにログインします。
  2. OperatorsInstalled Operators をクリックします。
  3. openshift-storage プロジェクトを選択します。
  4. OpenShift Container Storage Operator 名をクリックします。
  5. Subscription タブをクリックしてから、Approval の下にあるリンクをクリックします。
  6. Manual を選択し、Save をクリックします。
  7. Upgrade StatusUpgrading に変更するまで待機します。
  8. Upgrade Statusrequires approval が表示される場合は、requires approval をクリックします。
  9. InstallPlan Details ページで、Preview Install Plan をクリックします。
  10. インストール計画を確認し、Approve をクリックします。
  11. StatusUnknown から Created に変更されるまで待機します。
  12. OperatorsInstalled Operators をクリックします。
  13. openshift-storage プロジェクトを選択します。
  14. StatusUp to date に変更するまで待機します。
注記

NooBaa DB を MongoDB から PostgreSQL に移行するため、アップグレード中は Multicloud Object Gateway の停止が短期間予想されます。

検証手順

  1. Overview → Persistent Storage タブをクリックし、Status カードで OCS Cluster に正常であることを示す緑色のチェックマークが表示されていることを確認します。
  2. Overview → Object Service タブをクリックし、Status カードで、Object ServiceData Resiliency の両方が正常な状態にあることを示す Ready 状態(green tick)であることを確認します。
  3. OperatorsInstalled OperatorsOpenShift Container Storage Operator をクリックします。Storage Cluster で、クラスターサービスのステータスが Ready であることを確認します。
  4. Operator Pod を含むすべての OpenShift Container Storage Pod が openshift-storage namespace で Running 状態にあることを確認します。

    Pod の状態を確認するには、OpenShift Web コンソールの左側のペインから WorkloadsPods をクリックします。Project ドロップダウンリストから openshift-storage を選択します。

    注記

    OpenShift Container Storage バージョン 4.6 から 4.7 に更新された後も、Version フィールドには依然として 4.6 が表示されます。これは、ocs-operator がこのフィールドで表示される文字列を更新しないためです。

  5. 検証手順が失敗した場合は、 Red Hat サポートにお問い合わせください

関連情報

OpenShift Container Storage の更新中に問題が発生した場合は、『トラブルシューティングガイド』の トラブルシューティングで一般に必要になるログについてのセクションを参照してください。

第5章 既存のバッキングストアへのアノテーションの追加

適切なアノテーションを既存のバッキングストアに追加すると、RGW(Object gateways)がサポートするバッキングストアが実際のサイズおよびフリーサイズを報告することができます。Multicloud Object Gateway(MCG)はこの情報を取得して使用できます。

手順

  1. OpenShift Container Platform Web コンソールにログインします。
  2. Home → Search をクリックします。
  3. ResourcesBackingStore を検索し、クリックします。
  4. S3 互換 BackingStore の横にある Action Menu(⋮)→ Edit annotations をクリックします。
  5. KEYrgw を追加します。
  6. Save をクリックします。

次のステップ

ローカルストレージでサポートされるクラスターの場合、すべての機能が予想通りに機能するように、更新後に追加の設定手順が必要になります。

詳細は、ローカルストレージでサポートされるクラスターについての更新後の設定の変更について参照してください

第6章 ローカルストレージがサポートするクラスターについての更新後の設定の変更

ローカルストレージでサポートされるクラスターでは、すべての機能が予想通りに機能するように、更新後に追加の設定手順が必要になります。Red Hat OpenShift Container Platform 4.6 以降で、ローカルストレージ Operator はローカルストレージを管理するための新規のカスタムリソースタイプを提供します。

  • LocalVolumeDiscovery
  • LocalVolumeSet

これらのリソースタイプは、以前のバージョンからの更新の一部として自動的に処理されないため、手動で作成する必要があります。

注記

4.5 から 4.6 にアップグレードした後にこれらのリソースをすでに作成している場合、4.6 から 4.7 にアップグレードした後にそれらを作成する必要はありません。

6.1. コマンドラインを使用した LocalVolumeDiscovery カスタムリソースの作成

LocalVolumeDiscovery カスタムリソースを作成し、デバイス管理ユーザーインターフェースがローカルデバイスの状態を検知できるようにし、クラスターノードで利用可能なデバイスについての情報を提供します。

前提条件

  • OpenShift Container Platform クラスターへの管理者アクセス。

手順

  1. OpenShift ローカルストレージ Operator がインストールされている namespace を特定し、これを local_storage_project 変数に割り当てます。

    $ local_storage_project=$(oc get csv --all-namespaces | awk '{print $1}' | grep local)

    以下に例を示します。

    $ local_storage_project=$(oc get csv --all-namespaces | awk '{print $1}' | grep local)
    echo $local_storage_project
    openshift-local-storage
  2. ローカルストレージ Operator がインストールされているプロジェクトに切り替えます。

    $ oc project $local_storage_project
  3. 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
  4. LocalVolumeDiscovery カスタムリソースを作成します。

    $ oc create -f local-volume-discovery.yaml

検証手順

  1. OpenShift Web コンソールにログインします。
  2. ComputeNode をクリックし、ノードの名前をクリックします。
  3. Disks タブをクリックして、そのノードで利用可能なデバイスが表示されることを確認します。

6.2. コマンドラインを使用した LocalVolumeSet カスタムリソースの作成

LocalVolumeSet カスタムリソースを作成し、指定する条件に基づいて特定のストレージデバイスを永続ボリュームとして自動的にプロビジョニングします。永続ボリュームは、nodeSelector の条件に一致する任意のノードで deviceInclusionSpec の条件に一致するデバイスについて作成されます。

前提条件

  • OpenShift Container Platform クラスターへの管理者アクセス。

手順

  1. 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、および worker 2 ノードから特定のベンダーによって提供される、サイズが 100 GB から 100 TB までのローテーションされないデバイスの特定モデルでディスク全体またはパーティションを選択します。localblock ストレージクラスが作成され、永続ボリュームが検出されたデバイスからプロビジョニングされます。

    重要

    minSize の適切な値を選択し、システムパーティションが選択されないようにします。

  2. LocalVolumeSet を作成します。

    $ oc create -f local-volume-set.yaml

検証手順

  1. 以下のコマンドを使用して、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
  2. プロビジョニングされた永続ボリュームの状態を確認します。

    $ 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

6.3. アノテーションの追加

以下の手順を使用して、以前のバージョンから OpenShift Container Storage 4.7 へのアップグレード時に、アノテーションをストレージクラスターに追加し、ユーザーインターフェースを使用して、障害のあるストレージデバイスを交換できるようにします。

手順

  1. OpenShift Container Platform Web コンソールにログインします。
  2. HomeSearch をクリックします。
  3. ResourcesStorageCluster を検索してクリックします。
  4. ocs-storagecluster の横にある Action menu (⋮)Edit annotations をクリックします。
  5. cluster.ocs.openshift.io/local-devicestrueKEY および VALUE をそれぞれ追加します。
  6. Save をクリックします。