外部モードでの OpenShift Data Foundation のデプロイ


Red Hat OpenShift Data Foundation 4.11

外部の Red Hat Ceph Storage クラスターおよび IBM FlashSystem を使用するように OpenShift Data Foundation をデプロイする手順

Red Hat Storage Documentation Team

概要

Red Hat OpenShift Data Foundation 4.11 をインストールし、外部 Red Hat Ceph Storage クラスターまたは IBM FlashSystem を使用する方法については、本書をお読みください。

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

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

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

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章 外部モードでのデプロイの概要

Red Hat OpenShift Data Foundation は、外部の Red Hat Ceph Storage クラスターからサービスを作成するか、次のプラットフォームで実行している OpenShift Container Platform クラスターを介して IBM FlashSystems を使用できるようにすることができます。

  • VMware vSphere
  • ベアメタル
  • Red Hat OpenStack Platform (テクノロジープレビュー)
  • IBM Power
  • IBM Z インフラストラクチャー

詳細は、Planning your deployment を参照してください。

RHCS 4 クラスターのインストール方法は、 インストールガイド を参照してください。

以下の手順に従って、OpenShift Data Foundation を外部モードでデプロイします。

障害復旧の要件 テクノロジープレビュー

Red Hat OpenShift Data Foundation でサポートされる障害復旧機能では、障害復旧ソリューションを正常に実装するために以下の前提条件をすべて満たす必要があります。

  • 有効な Red Hat OpenShift Data Foundation Advanced サブスクリプション
  • 有効な Red Hat Advanced Cluster Management for Kubernetes サブスクリプション

詳細については、OpenShift Data Foundation サブスクリプションに関するナレッジベースの記事 を参照してください。

詳細な障害復旧の要件は、Configuring OpenShift Data Foundation Disaster Recovery for OpenShift Workloads ガイド、および Red Hat Advanced Cluster Management for Kubernetes ドキュメントの インストールガイド要件と推奨事項 のセクションを参照してください。

第2章 Red Hat Ceph Storage を使用した OpenShift Data Foundation のデプロイ

Red Hat OpenShift Data Foundation は、OpenShift Container Platform クラスターで外部 Red Hat Ceph Storage クラスターのサービスを利用できるようにします。OpenShift Data Foundation Operator をインストールし、外部 Ceph Storage システム用に OpenShift Data Foundation クラスターを作成する必要があります。

2.1. Red Hat OpenShift Data Foundation Operator のインストール

Red Hat OpenShift Data Foundation Operator は、Red Hat OpenShift Container Platform Operator Hub を使用してインストールできます。

前提条件

  • cluster-admin および operator インストールのパーミッションを持つアカウントを使用して OpenShift Container Platform クラスターにアクセスできる。
  • その他のリソース要件については、デプロイメントのプランニング ガイドを参照してください。
重要
  • OpenShift Data Foundation のクラスター全体でのデフォルトノードセレクターを上書きする必要がある場合は、以下のコマンドを使用し、openshift-storage namespace の空のノードセレクターを指定できます (この場合、openshift-storage を作成します)。

    $ oc annotate namespace openshift-storage openshift.io/node-selector=

手順

  1. OpenShift Web コンソールにログインします。
  2. Operators → OperatorHub をクリックします。
  3. スクロールするか、OpenShift Data FoundationFilter by keyword ボックスに入力し、OpenShift Data Foundation Operator を検索します。
  4. Install をクリックします。
  5. Install Operator ページで、以下のオプションを設定します。

    1. Channel を stable-4.11 として更新します。
    2. Installation Mode オプションに A specific namespace on the cluster を選択します。
    3. Installed Namespace に Operator recommended namespace openshift-storage を選択します。namespace openshift-storage が存在しない場合、これは Operator のインストール時に作成されます。
    4. 承認ストラテジー を Automatic または Manual として選択します。

      Automatic (自動) 更新を選択した場合、Operator Lifecycle Manager (OLM) は介入なしに、Operator の実行中のインスタンスを自動的にアップグレードします。

      Manual 更新を選択した場合、OLM は更新要求を作成します。クラスター管理者は、Operator を新しいバージョンに更新できるように更新要求を手動で承認する必要があります。

    5. Console プラグインEnable オプションが選択されていることを確認します。
    6. Install をクリックします。

検証手順

  • Operator が正常にインストールされると、Web console update is available メッセージを含むポップアップがユーザーインターフェイスに表示されます。このポップアップから Refresh web console をクリックして、反映するコンソールを変更します。
  • Web コンソールに移動します。

    • Installed Operators に移動し、OpenShift Data Foundation Operator に、インストールが正常に実行されたことを示す緑色のチェックマークが表示されていることを確認します。
    • Storage に移動し、Data Foundation ダッシュボードが使用可能かどうかを確認します。

2.2. 外部 Ceph Storage システム用の OpenShift Data Foundation クラスターの作成

OpenShift Data Foundation Operator を、VMware vSphere またはユーザーによってプロビジョニングされたベアメタルのインフラストラクチャー上にデプロイされた OpenShift Container Platform にインストールした後に、OpenShift Data Foundation クラスターを新規作成する必要があります。

前提条件

  • 有効な Red Hat OpenShift Data Foundation Advanced サブスクリプション。OpenShift Data Foundation のサブスクリプションの仕組みを確認するには、OpenShift Data Foundation subscriptions に関するナレッジベースの記事 を参照してください。
  • OpenShift Data Foundation 4.11 をデプロイする前に、OpenShift Container Platform のバージョンが 4.11 以上であることを確認してください。
  • OpenShift Data Foundation Operator がインストールされている。詳細は、Operato Hub を使用した OpenShift Data Foundation Operator のインストール を参照してください。
  • Red Hat OpenShift Data Foundation サポートおよび相互運用性チェッカー のラボにアクセスして外部モードの Red Hat OpenShift Data Foundation および Red Hat Ceph Storage (RHCS) のサポートと相互運用性を確認する。

    • ODF as Self-Managed Service として Service Type を選択します。
    • ドロップダウンから適切な Version を選択します。
    • Versions タブで、Supported RHCS Compatibility タブをクリックします。
  • Red Hat Ceph Storage クラスターを 4.1.1 以前のバージョンから最新リリースに更新し、これが新規にデプロイされたクラスターではない場合は、Red Hat Ceph Storage クラスターで CephFS プールのアプリケーションタイプを手動で設定し、外部モードで CephFS PVC の作成を有効にする。

    詳細は、Troubleshooting CephFS PVC creation in external mode を参照してください。

  • Red Hat Ceph Storage では、Ceph Dashboard がインストールされ、設定されている。詳細は、Ceph Dashboard のインストールおよびアクセス について参照してください。
  • 外部の Red Hat Ceph Storage クラスターでは、PG Autoscaler を有効にする (推奨)。詳細は、Red Hat Ceph Storage ドキュメントの The placement group autoscaler セクションを参照してください。
  • 外部 Ceph クラスターには、既存の RBD プールを使用できるように事前に設定されている。これがない場合は、OpenShift Data Foundation のデプロイメントに進む前に、Red Hat Ceph Storage の管理者に問い合わせてこれを作成してください。Red Hat は、OpenShift Data Foundation クラスターごとに別個のプールを使用することを推奨します。
  • オプション: デフォルトのゾーングループとは別に作成されたゾーングループがある場合、ホスト名 rook-ceph-rgw-ocs-external-storagecluster-cephobjectstore.openshift-storage.svc をゾーングループに追加する。これは、OpenShift Data Foundation が S3 リクエストを RADOS Object Gateway (RGW) に送信するときに、このホスト名を使用するからです。詳細は、Red Hat ナレッジベースソリューション Ceph - How to add hostnames in RGW zonegroup? を参照してください。

手順

  1. Operators → Installed Operators をクリックし、インストールされた Operator をすべて表示します。

    選択された Projectopenshift-storage であることを確認します。

  2. OpenShift Data Foundation をクリックした後、Create StorageSystem をクリックします。
  3. Backing storage ページで、以下のオプションを選択します。

    1. Deployment type オプションで Full deployment を選択します。
    2. 利用可能なオプションから 、Connect an external storage platform を選択します。
    3. ストレージプラットフォームRed Hat Ceph Storageを選択します。
    4. Next をクリックします。
  4. 接続の詳細ページで、必要な情報を提供します。

    1. Download Script リンクをクリックして、Ceph クラスターの詳細を抽出するために python スクリプトをダウンロードします。
    2. Red Hat Ceph Storage (RHCS) クラスターの詳細を抽出するには、RHCS 管理者に問い合わせた上で Red Hat Ceph Storage ノードでダウンロードした python スクリプトを admin key を使用して実行します。

      1. RHCS ノードで以下のコマンドを実行し、利用可能な引数のリストを表示します。

        # python3 ceph-external-cluster-details-exporter.py --help
        重要

        Red Hat Ceph Storage 4.x クラスターが Red Hat Enterprise Linux 7.x (RHEL 7.x) クラスターにデプロイされている場合は、python3 ではなく python を使用します。

        MON コンテナー内 (コンテナー化されたデプロイメント) または MON ノード (RPM デプロイメント) からスクリプトを実行することもできます。

        注記

        yum install cephadm コマンドを使用してから、cephadm コマンドを使用して、コンテナーを使用して RHCS クラスターをデプロイします。ノードへの Ceph パッケージのインストールには、yum を使用するのではなく、cephadm コマンドを使用して RHCS コンテナーイメージをプルする必要があります。詳細は、RHCS 製品ドキュメント を参照してください。

      2. RHCS クラスターから外部クラスターの詳細を取得するには、以下のコマンドを実行します。

        # python3 ceph-external-cluster-details-exporter.py \
        --rbd-data-pool-name <rbd block pool name>  [optional arguments]

        以下に例を示します。

        # python3 ceph-external-cluster-details-exporter.py --rbd-data-pool-name ceph-rbd --monitoring-endpoint xxx.xxx.xxx.xxx --monitoring-endpoint-port xxxx --rgw-endpoint xxx.xxx.xxx.xxx:xxxx --run-as-user client.ocs

        この例では、次のようになります。

        rbd-data-pool-name

        OpenShift Data Foundation でブロックストレージを提供するために使用される必須のパラメーターです。

        rgw-endpoint

        (オプション) このパラメーターは、Ceph Rados Gateway for OpenShift Data Foundation を介してオブジェクトストレージをプロビジョニングする場合にのみ必要です。<ip_address>:<port> の形式でエンドポイントを指定します。

        注記

        完全修飾ドメイン名 (FQDN) も <FQDN>:<PORT> フォーマットでサポートされています。

        monitoring-endpoint

        (オプション) OpenShift Container Platform クラスターから到達可能な、アクティブおよびスタンバイの mgrs の IP アドレスのコンマ区切りリストを受け入れます。指定しない場合には、値が自動的に入力されます。

        monitoring-endpoint-port

        (オプション) これは、--monitoring-endpoint で指定された ceph-mgr Prometheus エクスポーターに関連付けられるポートです。指定しない場合には、値が自動的に入力されます。

        run-as-user

        (オプション) このパラメーターは、スクリプトによって作成される Ceph ユーザーの名前を指定するために使用されます。このパラメーターを指定しないと、デフォルトのユーザー名 client.healthchecker が作成されます。新規ユーザーのパーミッションは以下のように設定されます。

        • caps: [mgr] はコマンド設定を許可します。
        • caps: [mon] は r を許可し、コマンド quorum_status を許可し、コマンド version を許可します。
        • caps: [osd] allow rwx pool=RGW_POOL_PREFIX.rgw.meta, allow r pool=.rgw.root, allow rw pool=RGW_POOL_PREFIX.rgw.control, allow rx pool=RGW_POOL_PREFIX.rgw.log, allow x pool=RGW_POOL_PREFIX.rgw.buckets.index

        その他のフラグ:

        rgw-pool-prefix

        (オプション) RGW プールの接頭辞。指定しない場合、デフォルトの接頭辞は default になります。

        rgw-tls-cert-path

        (オプション) RADOS Gateway エンドポイント TLS 証明書のファイルパス。

        rgw-skip-tls

        (オプション) このパラメーターは、自己署名証明書が提供される場合、TLS 証明書検証を無視します (非推奨)。

        ceph-conf

        (オプション) Ceph 設定ファイルの名前。

        cluster-name

        (オプション) Ceph クラスター名。

        出力 (output)

        (オプション) 出力の保存が必要なファイル。

        cephfs-metadata-pool-name

        (オプション) CephFS メタデータプールの名前。

        cephfs-data-pool-name

        (オプション) CephFS データプールの名前。

        cephfs-filesystem-name

        (オプション) CephFS ファイルシステムの名前。

        rbd-metadata-ec-pool-name

        (オプション) イレイジャーコードの RBD メタデータプールの名前。

        dry-run

        (オプション) このパラメーターは、実行されたコマンドを実行せずに出力する際に役立ちます。

        restricted-auth-permission

        (オプション) このパラメーターは、cephCSIKeyrings 認証パーミッションを特定のプールおよびクラスターに限定します。これで設定する必要がある必須フラグは rbd-data-pool-name および cluster-name です。また、CephFS ユーザー制限がある場合は、cephfs-filesystem-name フラグを渡して、パーミッションが特定の CephFS ファイルシステムに限定されるようにすることができます。

        注記

        このパラメーターは、新しいデプロイメントにのみ適用する必要があります。プールおよびクラスターごとに csi-users を限定するには、新しい csi-users とそれらの csi-users 用の新しいシークレットを作成する必要があります。

        限定された認証パーミッションの例:

        # python3 /etc/ceph/create-external-cluster-resources.py --cephfs-filesystem-name myfs --rbd-data-pool-name replicapool --cluster-name rookStorage --restricted-auth-permission true

        python スクリプトを使用して生成された 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": "<user-id>", "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": "<pool>"}}, {"name": "monitoring-endpoint", "kind": "CephCluster", "data": {"MonitoringEndpoint": "xxx.xxx.xxx.xxx", "MonitoringPort": "xxxx"}}, {"name": "rook-ceph-dashboard-link", "kind": "Secret", "data": {"userID": "ceph-dashboard-link", "userKey": "<user-key>"}}, {"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"}}, {"name": "rgw-admin-ops-user", "kind": "Secret", "data": {"accessKey": "<access-key>", "secretKey": "<secret-key>"}}]

      3. JSON 出力を .json 拡張のあるファイルに保存します。

        注記

        OpenShift Data Foundation がシームレスに機能するには、JSON ファイルを使用してアップロードされるパラメーター (RGW エンドポイント、CephFS の詳細、RBD プールなど) が、ストレージクラスターの作成後も RHCS 外部クラスターで変更されないままであることを確認します。

      4. RHCS クラスターが以前のバージョンの OpenShift Data Foundation デプロイメントにすでに接続されているマルチテナントデプロイメントがある場合は、コマンドを実行します。

        # python3 ceph-external-cluster-details-exporter.py --upgrade
    3. Browse をクリックして JSON ファイルを選択し、アップロードします。

      JSON ファイルの内容が入力され、テキストボックスに表示されます。

    4. Next をクリックします。

      Next ボタンは、.json ファイルのアップロード後にのみ有効になります。

  5. Review and create ページで、すべての詳細が正しいことを確認します。

    • 設定を変更するには、Back をクリックして前の設定ページに戻ります。
  6. Create StorageSystem をクリックします。

検証手順

インストールされたストレージクラスターの最終ステータスを確認するには、以下を実行します。

  1. OpenShift Web コンソールで、Installed OperatorsOpenShift Data FoundationStorage Systemocs-external-storagecluster-storagesystemResources の順に移動します。
  2. StorageClusterStatusReady になっており、緑色のチェックマークが表示されていることを確認します。
  3. OpenShift Data Foundation、Pod、および StorageClass が正常にインストールされていることを確認するには、Verifying your external mode OpenShift Data Foundation installation for external Ceph storage system を参照してください。

2.3. 外部 Ceph Storage システムの OpenShift Data Foundation インストールの確認

このセクションを使用して、OpenShift Data Foundation が正しくデプロイされていることを確認します。

2.3.1. Pod の状態の確認

  1. OpenShift Web コンソールの左側のペインから Workloads → Pods をクリックします。
  2. Project ドロップダウンリストから openshift-storage を選択します。

    注記

    Show default projects オプションが無効になっている場合は、切り替えボタンを使用して、すべてのデフォルトプロジェクトをリスト表示します。

    各コンポーネントについて予想される Pod 数や、これがノード数によってどのように異なるかの詳細は、表2.1「OpenShift Data Foundation コンポーネントに対応する Pod」 を参照してください。

  3. 以下の Pod が実行中であるを確認します。

    表2.1 OpenShift Data Foundation コンポーネントに対応する Pod
    コンポーネント対応する Pod

    OpenShift Data Foundation Operator

    • ocs-operator-* (任意のワーカーノードに 1 Pod)
    • ocs-metrics-exporter-*(任意のワーカーノードに 1 Pod)
    • odf-operator-controller-manager-*(任意のワーカーノードに 1 Pod)
    • odf-console-*(任意のワーカーノードに 1 Pod)
    • csi-addons-controller-manager- * (任意のワーカーノードに 1 つの Pod)

    Rook-ceph Operator

    rook-ceph-operator-*

    (任意のワーカーノードに 1 Pod)

    Multicloud Object Gateway

    • noobaa-operator-* (任意のワーカーノードに 1 Pod)
    • noobaa-core-* (任意のワーカーノードに 1 Pod)
    • noobaa-db-pg-* (任意のワーカーノードに 1 Pod)
    • noobaa-endpoint-* (任意のワーカーノードに 1 Pod)

    CSI

    • cephfs

      • csi-cephfsplugin-* (各ワーカーノードに 1 Pod)
      • csi-cephfsplugin-provisioner-* (ワーカーノードに分散する 2 Pod)
    注記

    MDS が外部クラスターにデプロイされていない場合、csi-cephfsplugin Pod は作成されません。

    • rbd

      • csi-rbdplugin-* (各ワーカーノードに 1 Pod)
      • csi-rbdplugin-provisioner-* (ストレージノードに分散する 2 Pod)

2.3.2. OpenShift Data Foundation クラスターが正常であることの確認

  1. OpenShift Web コンソールで、StorageData Foundation をクリックします。
  2. Overview タブの Status カードで Storage System をクリックし、表示されたポップアップからストレージシステムリンクをクリックします。
  3. Block and File タブの Status カードで、Storage Cluster に緑色のチェックマークが表示されていることを確認します。
  4. Details カードで、クラスター情報が表示されていることを確認します。

ブロックおよびファイルダッシュボードを使用した OpenShift Data Foundation クラスターの正常性についての詳細は、Monitoring OpenShift Data Foundation を参照してください。

2.3.3. Multicloud Object Gateway が正常であることの確認

  1. OpenShift Web コンソールで、StorageData Foundation をクリックします。
  2. Overview タブの Status カードで Storage System をクリックし、表示されたポップアップからストレージシステムリンクをクリックします。

    1. Object タブの Status カードで、Object ServiceData Resiliency の両方に緑色のチェックマークが表示されていることを確認します。
    2. Details カード で、Multicloud Object Gateway (MCG) 情報が表示されることを確認します。
注記

RADOS Object Gateway は、OpenShift Data Foundation を外部モードでデプロイする際に、RADOS Object Gateway エンドポイントの詳細が含まれている場合にのみ表示されます。

オブジェクトダッシュボードを使用した OpenShift Data Foundation クラスターの正常性についての詳細は、Monitoring OpenShift Data Foundation を参照してください。

2.3.4. ストレージクラスの作成および一覧表示の確認

  1. OpenShift Web コンソールの左側のペインから Storage → Storage Classes をクリックします。
  2. 以下のストレージクラスが OpenShift Data Foundation クラスターの作成時に作成されることを確認します。

    • ocs-external-storagecluster-ceph-rbd
    • ocs-external-storagecluster-ceph-rgw
    • ocs-external-storagecluster-cephfs
    • openshift-storage.noobaa.io
注記
  • MDS が外部クラスターにデプロイされていない場合、ocs-external-storagecluster-cephfs ストレージクラスは作成されません。
  • RGW が外部クラスターにデプロイされていない場合、ocs-external-storagecluster-ceph-rgw ストレージクラスは作成されません。

MDS および RGW についての詳細は、Red Hat Ceph Storage のドキュメント を参照してください。

2.3.5. Ceph クラスターが接続されていることの確認

以下のコマンドを実行して、OpenShift Data Foundation クラスターが外部の Red Hat Ceph Storage クラスターに接続されているかどうかを確認します。

$ oc get cephcluster -n openshift-storage
NAME                                      DATADIRHOSTPATH   MONCOUNT   AGE   PHASE       MESSAGE                          HEALTH      EXTERNAL
ocs-external-storagecluster-cephcluster                                30m   Connected   Cluster connected successfully   HEALTH_OK   true

2.3.6. ストレージクラスターの準備状態の確認

以下のコマンドを実行して、ストレージクラスターが準備状態にあり、External オプションが true に設定されていることを確認します。

$ oc get storagecluster -n openshift-storage
NAME                          AGE   PHASE   EXTERNAL   CREATED AT             VERSION
ocs-external-storagecluster   30m   Ready   true       2021-11-17T09:09:52Z   4.11.0

第3章 IBM FlashSystem を使用した OpenShift Data Foundation のデプロイ

OpenShift Data Foundation は、OpenShift Container Platform クラスターを介して使用できる IBM FlashSystem ストレージを使用できます。OpenShift Data Foundation Operator をインストールし、IBM FlashSystem ストレージ用に OpenShift Data Foundation クラスターを作成する必要があります。

3.1. Red Hat OpenShift Data Foundation Operator のインストール

Red Hat OpenShift Data Foundation Operator は、Red Hat OpenShift Container Platform Operator Hub を使用してインストールできます。

前提条件

  • cluster-admin および operator インストールのパーミッションを持つアカウントを使用して OpenShift Container Platform クラスターにアクセスできる。
  • その他のリソース要件については、デプロイメントのプランニング ガイドを参照してください。
重要
  • OpenShift Data Foundation のクラスター全体でのデフォルトノードセレクターを上書きする必要がある場合は、以下のコマンドを使用し、openshift-storage namespace の空のノードセレクターを指定できます (この場合、openshift-storage を作成します)。

    $ oc annotate namespace openshift-storage openshift.io/node-selector=

手順

  1. OpenShift Web コンソールにログインします。
  2. Operators → OperatorHub をクリックします。
  3. スクロールするか、OpenShift Data FoundationFilter by keyword ボックスに入力し、OpenShift Data Foundation Operator を検索します。
  4. Install をクリックします。
  5. Install Operator ページで、以下のオプションを設定します。

    1. Channel を stable-4.11 として更新します。
    2. Installation Mode オプションに A specific namespace on the cluster を選択します。
    3. Installed Namespace に Operator recommended namespace openshift-storage を選択します。namespace openshift-storage が存在しない場合、これは Operator のインストール時に作成されます。
    4. 承認ストラテジー を Automatic または Manual として選択します。

      Automatic (自動) 更新を選択した場合、Operator Lifecycle Manager (OLM) は介入なしに、Operator の実行中のインスタンスを自動的にアップグレードします。

      Manual 更新を選択した場合、OLM は更新要求を作成します。クラスター管理者は、Operator を新しいバージョンに更新できるように更新要求を手動で承認する必要があります。

    5. Console プラグインEnable オプションが選択されていることを確認します。
    6. Install をクリックします。

検証手順

  • Operator が正常にインストールされると、Web console update is available メッセージを含むポップアップがユーザーインターフェイスに表示されます。このポップアップから Refresh web console をクリックして、反映するコンソールを変更します。
  • Web コンソールに移動します。

    • Installed Operators に移動し、OpenShift Data Foundation Operator に、インストールが正常に実行されたことを示す緑色のチェックマークが表示されていることを確認します。
    • Storage に移動し、Data Foundation ダッシュボードが使用可能かどうかを確認します。

3.2. 外部の IBM FlashSystem ストレージ用の OpenShift Data Foundation クラスターの作成

OpenShift Data Foundation Operator を OpenShift Container Platform にインストールした後に、OpenShift Data Foundation クラスターを新規に作成する必要があります。

前提条件

  • 有効な Red Hat OpenShift Data Foundation Advanced サブスクリプション。詳細については、OpenShift Data Foundation サブスクリプションに関するナレッジベースの記事 を参照してください。
  • Red Hat Enterprise Linux® オペレーティングシステムの場合は、iSCSI 接続を行ってから、ホストに Linux マルチパスデバイスを設定する。
  • Red Hat Enterprise Linux CoreOS の場合、またはパッケージがすでにインストールされている場合は、ホストに Linux マルチパスデバイスを設定する。
  • ストレージシステムの指示に従って、ストレージ接続で各ワーカーを設定する。サポートされる最新の FlashSystem 製品およびバージョンについては、IBM ドキュメント の Spectrum Virtualize ファミリー製品ドキュメントのインストールセクションを参照してください。

手順

  1. OpenShift Web コンソールで、Operators → Installed Operators をクリックし、インストールされた Operator を表示します。

    選択された Projectopenshift-storage であることを確認します。

  2. OpenShift Data Foundation をクリックしてから Create StorageSystem をクリックします。
  3. Backing storage ページで、以下のオプションを選択します。

    1. Deployment type オプションで Full deployment を選択します。
    2. 利用可能なオプションから 、Connect an external storage platform を選択します。
    3. ストレージプラットフォーム のリストから IBM FlashSystem Storage を選択します。
    4. Next をクリックします。
  4. Create storage class ページで、以下の情報を提供します。

    1. ストレージクラスの名前を入力します。

      ブロックストレージ永続ボリュームを作成する際に、最適なパフォーマンスを得るためにストレージクラス <storage_class_name> を選択します。ストレージクラスでは、FlashSystem への直接 I/O パスが許可されます。

    2. IBM FlashSystem 接続の詳細を入力します。

      • IP アドレス
      • ユーザー名
      • パスワード
      • プール名
    3. Volume mode では、thick または thin を選択します。
    4. Next をクリックします。
  5. Capacity and nodes ページで、必要な詳細情報を指定します。

    1. Requested capacity の値を選択します。

      利用可能なオプションは 0.5 TiB2 TiB、および 4 TiB です。要求される容量は、インフラストラクチャーストレージクラスに動的に割り当てられます。

    2. 3 つの異なるゾーンで、最低でも 3 つのノードを選択します。

      ノードごとに、14 つ以上の CPU および 34 GiB の RAM から開始することが推奨されます。選択したノードが集約された 30 CPU および 72 GiB の RAM の OpenShift Data Foundation クラスターの要件と一致しない場合は、最小クラスターがデプロイされます。ノードの最小要件については、プランニングガイドの Resource requirements のセクションを参照してください。

    3. Next をクリックします。
  6. オプション: Security and network ページで、必要な情報を提供します。

    1. 暗号化を有効にするには、Enable data encryption for block and file storage を選択します。
    2. 暗号化レベルのいずれかまたは両方を選択します。

      • Cluster-wide encryption: クラスター全体 (ブロックおよびファイル) を暗号化します。
      • StorageClass encryption: 暗号化対応のストレージクラスを使用して暗号化された永続ボリューム (ブロックのみ) を作成します。
    3. Connect to an external key management service チェックボックスを選択します。これはクラスター全体の暗号化の場合はオプションになります。

      1. Key Management Service Provider はデフォルトで Vault に設定されます。
      2. Vault Service Name、Vault サーバーのホスト Address('https://<hostname または ip>')、Port 番号および Token を入力します。
    4. Advanced Settings をデプロイメントして、Vault 設定に基づいて追加の設定および証明書の詳細を入力します。

      1. OpenShift Data Foundation 専用で固有のキーバリューシークレットパスを Backend Path に入力します。
      2. (オプション) TLS Server Name および Vault Enterprise Namespace を入力します。
      3. それぞれの PEM でエンコードされた証明書ファイルをアップロードして、CA Certificate、Client Certificate、および Client Private Key を指定します。
    5. Save をクリックします。
    6. 単一のネットワークを使用している場合は Default (SDN) を選択し、複数のネットワークインターフェイスを使用する場合は Custom (Multus) を選択します。

      1. ドロップダウンメニューから Public Network Interface を選択します。
      2. ドロップダウンメニューから Cluster Network Interface を選択します。注意: 追加のネットワークインターフェイスを 1 つだけ使用している場合は、単一の NetworkAttachementDefinition (Public Network Interface には ocs-public-cluster) を選択し、Cluster Network Interface は空白のままにします。
    7. Next をクリックします。
  7. Review and create ページで、すべての詳細が正しいことを確認します。

    • 設定を変更するには、Back をクリックして前の設定ページに戻ります。
  8. Create StorageSystem をクリックします。

検証手順

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

    注記

    Show default projects オプションが無効になっている場合は、切り替えボタンを使用して、すべてのデフォルトプロジェクトをリスト表示します。

    表3.1 OpenShift Data Foundation コンポーネントに対応する Pod
    コンポーネント対応する Pod

    OpenShift Data Foundation Operator

    • ocs-operator-* (任意のワーカーノードに 1 Pod)
    • ocs-metrics-exporter-*(任意のワーカーノードに 1 Pod)
    • odf-operator-controller-manager-*(任意のワーカーノードに 1 Pod)
    • odf-console-*(任意のワーカーノードに 1 Pod)
    • csi-addons-controller-manager- * (任意のワーカーノードに 1 つの Pod)

    ibm-storage-odf-operator

    • ibm-storage-odf-operator-*(任意のワーカーノードに 2 Pod)
    • ibm-odf-console-*

    ibm-flashsystem-storage

    ibm-flashsystem-storage-*(任意のワーカーノードに 1 Pod)

    rook-ceph Operator

    rook-ceph-operator-*(任意のワーカーノードに 1 Pod)

    Multicloud Object Gateway

    • noobaa-operator-* (任意のワーカーノードに 1 Pod)
    • noobaa-core-* (任意のワーカーノードに 1 Pod)
    • noobaa-db-pg-* (任意のワーカーノードに 1 Pod)
    • noobaa-endpoint-* (任意のワーカーノードに 1 Pod)

    CSI

    • ibm-block-csi-* (任意のワーカーノードに 1 Pod)
OpenShift Data Foundation クラスターが正常であることの確認
  1. Web コンソールで、StorageData Foundation をクリックします。
  2. Overview タブの Status カードで、Storage System に緑色のチェックマークが表示されていることを確認します。
  3. Details カードで、クラスター情報が表示されていることを確認します。

ブロックおよびファイルダッシュボードを使用した OpenShift Data Foundation クラスターの正常性についての詳細は、Monitoring OpenShift Data Foundation を参照してください。

Multicloud Object Gateway が正常であることの確認
  1. Web コンソールで、StorageData Foundation をクリックします。
  2. Overview タブの Status カードで Storage System をクリックし、表示されたポップアップからストレージシステムリンクをクリックします。
  3. Object タブの Status カードで、Object ServiceData Resiliency の両方に緑色のチェックマークが表示されていることを確認します。
  4. Details カードで、MCG 情報が表示されることを確認します。

オブジェクトダッシュボードを使用した OpenShift Data Foundation クラスターの正常性についての詳細は、Monitoring OpenShift Data Foundation を参照してください。

IBM FlashSystem が接続されており、ストレージクラスターが準備中であることの確認
  • 以下のコマンドを実行して、OpenShift Data Foundation クラスターが外部の IBM FlashSystem に接続されているかどうかを確認します。
$ oc get flashsystemclusters.odf.ibm.com
NAME                     AGE   PHASE   CREATED AT
ibm-flashsystemcluster   35s           2021-09-23T07:44:52Z
ストレージの StorageSystem の確認
  • 以下のコマンドを実行して、IBM FlashSystem ストレージクラスターの storageSystem を確認します。
$ oc get storagesystems.odf.openshift.io
NAME                                   STORAGE-SYSTEM-KIND                       STORAGE-SYSTEM-NAME
ibm-flashsystemcluster-storagesystem   flashsystemcluster.odf.ibm.com/v1alpha1   ibm-flashsystemcluster
ocs-storagecluster-storagesystem       storagecluster.ocs.openshift.io/v1        ocs-storagecluster
IBM Operator のサブスクリプションの確認
  • 以下のコマンドを実行してサブスクリプションを確認します。
$ oc get subscriptions.operators.coreos.com
NAME                                                                      PACKAGE                    SOURCE                CHANNEL
ibm-block-csi-operator-stable-certified-operators-openshift-marketplace   ibm-block-csi-operator     certified-operators   stable
ibm-storage-odf-operator                                                  ibm-storage-odf-operator   odf-catalogsource     stable-v1
noobaa-operator-alpha-odf-catalogsource-openshift-storage                 noobaa-operator            odf-catalogsource     alpha
ocs-operator-alpha-odf-catalogsource-openshift-storage                    ocs-operator               odf-catalogsource     alpha
odf-operator                                                              odf-operator               odf-catalogsource     alpha
CSV の確認
  • 以下のコマンドを実行して、CSV が succeeded 状態にあることを確認します。
$ oc get csv
NAME                              DISPLAY                                     VERSION   REPLACES                        PHASE
ibm-block-csi-operator.v1.6.0     Operator for IBM block storage CSI driver   1.6.0     ibm-block-csi-operator.v1.5.0   Succeeded
ibm-storage-odf-operator.v0.2.1   IBM Storage ODF operator                    0.2.1                                     Installing
noobaa-operator.v5.9.0            NooBaa Operator                             5.9.0                                     Succeeded
ocs-operator.v4.11.0               OpenShift Container Storage                 4.11.0                                     Succeeded
odf-operator.v4.11.0               OpenShift Data Foundation                   4.11.0                                     Succeeded
IBM Operator および CSI Pod の確認
  • 以下のコマンドを実行して、IBM Operator および CSI Pod を確認します。
$ oc get pods
NAME                                                              READY   STATUS              RESTARTS   AGE
5cb2b16ec2b11bf63dbe691d44a63535dc026bb5315d5075dc6c398b3c58l94   0/1     Completed           0          10m
7c806f6568f85cf10d72508261a2535c220429b54dbcf87349b9b4b9838fctg   0/1     Completed           0          8m47s
c4b05566c04876677a22d39fc9c02512401d0962109610e85c8fb900d3jd7k2   0/1     Completed           0          10m
c5d1376974666727b02bf25b3a4828241612186744ef417a668b4bc1759rzts   0/1     Completed           0          10m
ibm-block-csi-operator-7b656d6cc8-bqnwp                           1/1     Running             0          8m3s
ibm-odf-console-97cb7c84c-r52dq                                   0/1     ContainerCreating   0          8m4s
ibm-storage-odf-operator-57b8bc47df-mgkc7                         1/2     ImagePullBackOff    0          94s
noobaa-operator-7698579d56-x2zqs                                  1/1     Running             0          9m37s
ocs-metrics-exporter-94b57d764-zq2g2                              1/1     Running             0          9m32s
ocs-operator-5d96d778f6-vxlq5                                     1/1     Running             0          9m33s
odf-catalogsource-j7q72                                           1/1     Running             0          10m
odf-console-8987868cd-m7v29                                       1/1     Running             0          9m35s
odf-operator-controller-manager-5dbf785564-rwsgq                  2/2     Running             0          9m35s
rook-ceph-operator-68b4b976d8-dlc6w                               1/1     Running             0          9m32s

第4章 外部ストレージシステムからの OpenShift Data Foundation のアンインストール

このセクションの手順に従って OpenShift Data Foundation をアンインストールします。OpenShift Data Foundation をアンインストールしても、外部クラスターから RBD プールが削除されたり、外部の RedHat Ceph Storage クラスターがアンインストールされたりしません。

アノテーションのアンインストール

Storage Cluster のアノテーションは、アンインストールプロセスの動作を変更するために使用されます。アンインストールの動作を定義するために、ストレージクラスターに以下の 2 つのアノテーションが導入されました。

  • uninstall.ocs.openshift.io/cleanup-policy: delete
  • uninstall.ocs.openshift.io/mode: graceful
注記

uninstall.ocs.openshift.io/cleanup-policy は外部モードには適用できません。

以下の表は、これらのアノテーションで使用できるさまざまな値に関する情報を示しています。

表4.1 uninstall.ocs.openshift.io アンインストールアノテーションの説明
アノテーションデフォルト動作

cleanup-policy

delete

はい

Rook は物理ドライブおよび DataDirHostPath をクリーンアップします。

cleanup-policy

Retain

いいえ

Rook は物理ドライブおよび DataDirHostPath をクリーンアップ しません

モード

graceful

はい

Rook および NooBaa は PVC および OBC が管理者/ユーザーによって削除されるまでアンインストールプロセスを一時停止します。

mode

forced

いいえ

Rook および NooBaa は、Rook および NooBaa を使用してプロビジョニングされた PVC/OBC がそれぞれ存在している場合でもアンインストールを続行します。

以下のコマンドを使用してアノテーションの値を編集し、アンインストールモードを変更できます。

$ oc annotate storagecluster ocs-external-storagecluster -n openshift-storage uninstall.ocs.openshift.io/mode="forced" --overwrite
storagecluster.ocs.openshift.io/ocs-external-storagecluster annotated

前提条件

  • OpenShift Data Foundation クラスターの状態が正常である。リソースまたはノードの不足により一部の Pod が正常に終了されないと、アンインストールプロセスに失敗する可能性があります。クラスターの状態が正常でない場合は、OpenShift Data Foundation をアンインストールする前に Red Hat カスタマーサポートにお問い合わせください。
  • アプリケーションが OpenShift Data Foundation によって提供されるストレージクラスを使用して永続ボリューム要求 (PVC) またはオブジェクトバケット要求 (OBC) を消費していない。

手順

  1. OpenShift Data Foundation を使用しているボリュームスナップショットを削除します。

    1. すべての namespace からボリュームスナップショットをリスト表示します。

      $ oc get volumesnapshot --all-namespaces
    2. 直前のコマンドの出力から、OpenShift Data Foundation を使用しているボリュームスナップショットを特定し、削除します。

      $ oc delete volumesnapshot <VOLUME-SNAPSHOT-NAME> -n <NAMESPACE>
  2. OpenShift Data Foundation を使用している PVC および OBC を削除します。

    デフォルトのアンインストールモード (graceful) では、アンインストーラーは OpenShift Data Foundation を使用するすべての PVC および OBC が削除されるまで待機します。

    PVC を事前に削除せずに Storage Cluster を削除する場合は、アンインストールモードのアノテーションを forced に設定し、この手順を省略できます。これを実行すると、孤立した PVC および OBC がシステムに作成されます。

    1. OpenShift Data Foundation を使用して、OpenShift Container Platform モニタリングスタック PVC を削除します。

      OpenShift Data Foundation からのモニタリングスタックの削除 を参照してください。

    2. OpenShift Data Foundation を使用して、OpenShift Container Platform レジストリー PVC を削除します。

      OpenShift Data Foundation からの OpenShift Container Platform レジストリーの削除 を参照してください。

    3. OpenShift Data Foundation を使用して、OpenShift Container Platform ロギング PVC を削除します。

      OpenShift Data Foundation からのクラスターロギング Operator の削除 を参照してください。

    4. OpenShift Data Foundation を使用してプロビジョニングした PVC および OBC を削除します。

      • 以下に、OpenShift Data Foundation を使用してプロビジョニングされる PVC および OBC を特定するサンプルスクリプトを示します。このスクリプトは、OpenShift Data Foundation により内部で使用される PVC および OBC を無視します。

        #!/bin/bash
        
        RBD_PROVISIONER="openshift-storage.rbd.csi.ceph.com"
        CEPHFS_PROVISIONER="openshift-storage.cephfs.csi.ceph.com"
        NOOBAA_PROVISIONER="openshift-storage.noobaa.io/obc"
        RGW_PROVISIONER="openshift-storage.ceph.rook.io/bucket"
        
        NOOBAA_DB_PVC="noobaa-db"
        NOOBAA_BACKINGSTORE_PVC="noobaa-default-backing-store-noobaa-pvc"
        
        # Find all the OCS StorageClasses
        OCS_STORAGECLASSES=$(oc get storageclasses | grep -e "$RBD_PROVISIONER" -e "$CEPHFS_PROVISIONER" -e "$NOOBAA_PROVISIONER" -e "$RGW_PROVISIONER" | awk '{print $1}')
        
        # List PVCs in each of the StorageClasses
        for SC in $OCS_STORAGECLASSES
        do
                echo "======================================================================"
                echo "$SC StorageClass PVCs and OBCs"
                echo "======================================================================"
                oc get pvc  --all-namespaces --no-headers 2>/dev/null | grep $SC | grep -v -e "$NOOBAA_DB_PVC" -e "$NOOBAA_BACKINGSTORE_PVC"
                oc get obc  --all-namespaces --no-headers 2>/dev/null | grep $SC
                echo
        done
      • OBC を削除します。

        $ oc delete obc <obc name> -n <project name>
      • PVC を削除します。

        $ oc delete pvc <pvc name> -n <project-name>

        クラスターに作成されているカスタムバッキングストア、バケットクラスなどを削除していることを確認します。

  3. Storage Cluster オブジェクトを削除し、関連付けられたリソースが削除されるのを待機します。

    $ oc delete -n openshift-storage storagesystem --all --wait=true
  4. namespace を削除し、削除が完了するまで待機します。openshift-storage がアクティブなプロジェクトである場合は、別のプロジェクトに切り替える必要があります。

    以下に例を示します。

    $ oc project default
    $ oc delete project openshift-storage --wait=true --timeout=5m

    以下のコマンドが NotFound エラーを返すと、プロジェクトが削除されます。

    $ oc get project openshift-storage
    注記

    OpenShift Data Foundation のアンインストール時に、namespace が完全に削除されず、Terminating 状態のままである場合は、Troubleshooting and deleting remaining resources during Uninstall に記載の手順を実行して、namespace の終了をブロックしているオブジェクトを特定します。

  5. OpenShift Data Foundation を使用してプロビジョニングした PV がすべて削除されていることを確認します。Released 状態のままの PV がある場合は、これを削除します。

    $ oc get pv
    $ oc delete pv <pv name>
  6. CustomResourceDefinitions を削除します。

    $ oc delete crd backingstores.noobaa.io bucketclasses.noobaa.io cephblockpools.ceph.rook.io cephclusters.ceph.rook.io cephfilesystems.ceph.rook.io cephnfses.ceph.rook.io cephobjectstores.ceph.rook.io cephobjectstoreusers.ceph.rook.io noobaas.noobaa.io ocsinitializations.ocs.openshift.io storageclusters.ocs.openshift.io cephclients.ceph.rook.io cephobjectrealms.ceph.rook.io cephobjectzonegroups.ceph.rook.io cephobjectzones.ceph.rook.io cephrbdmirrors.ceph.rook.io storagesystems.odf.openshift.io --wait=true --timeout=5m
  7. OpenShift Data Foundation が完全にアンインストールされていることを確認するには、以下を実行します。

    1. OpenShift Container Platform Web コンソールで、Storage をクリックします。
    2. OpenShift Data Foundation が Storage に表示されていないことを確認します。

4.1. OpenShift Data Foundation からのモニタリングスタックの削除

このセクションでは、モニタリングスタックを OpenShift Data Foundation からクリーンアップします。

モニタリングスタックの設定の一部として作成される PVC は openshift-monitoring namespace に置かれます。

前提条件

  • PVC が OpenShift Container Platform モニタリングスタックを使用できるように設定されている。

    詳細は、configuring monitoring stack を参照してください。

手順

  1. openshift-monitoring namespace で現在実行されている Pod および PVC をリスト表示します。

    $ oc get pod,pvc -n openshift-monitoring
    NAME                           READY   STATUS    RESTARTS   AGE
    pod/alertmanager-main-0         3/3     Running   0          8d
    pod/alertmanager-main-1         3/3     Running   0          8d
    pod/alertmanager-main-2         3/3     Running   0          8d
    pod/cluster-monitoring-
    operator-84457656d-pkrxm        1/1     Running   0          8d
    pod/grafana-79ccf6689f-2ll28    2/2     Running   0          8d
    pod/kube-state-metrics-
    7d86fb966-rvd9w                 3/3     Running   0          8d
    pod/node-exporter-25894         2/2     Running   0          8d
    pod/node-exporter-4dsd7         2/2     Running   0          8d
    pod/node-exporter-6p4zc         2/2     Running   0          8d
    pod/node-exporter-jbjvg         2/2     Running   0          8d
    pod/node-exporter-jj4t5         2/2     Running   0          6d18h
    pod/node-exporter-k856s         2/2     Running   0          6d18h
    pod/node-exporter-rf8gn         2/2     Running   0          8d
    pod/node-exporter-rmb5m         2/2     Running   0          6d18h
    pod/node-exporter-zj7kx         2/2     Running   0          8d
    pod/openshift-state-metrics-
    59dbd4f654-4clng                3/3     Running   0          8d
    pod/prometheus-adapter-
    5df5865596-k8dzn                1/1     Running   0          7d23h
    pod/prometheus-adapter-
    5df5865596-n2gj9                1/1     Running   0          7d23h
    pod/prometheus-k8s-0            6/6     Running   1          8d
    pod/prometheus-k8s-1            6/6     Running   1          8d
    pod/prometheus-operator-
    55cfb858c9-c4zd9                1/1     Running   0          6d21h
    pod/telemeter-client-
    78fc8fc97d-2rgfp                3/3     Running   0          8d
    
    NAME                                                              STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS                  AGE
    persistentvolumeclaim/my-alertmanager-claim-alertmanager-main-0   Bound    pvc-0d519c4f-15a5-11ea-baa0-026d231574aa   40Gi       RWO            ocs-external-storagecluster-ceph-rbd   8d
    persistentvolumeclaim/my-alertmanager-claim-alertmanager-main-1   Bound    pvc-0d5a9825-15a5-11ea-baa0-026d231574aa   40Gi       RWO            ocs-external-storagecluster-ceph-rbd   8d
    persistentvolumeclaim/my-alertmanager-claim-alertmanager-main-2   Bound    pvc-0d6413dc-15a5-11ea-baa0-026d231574aa   40Gi       RWO            ocs-external-storagecluster-ceph-rbd   8d
    persistentvolumeclaim/my-prometheus-claim-prometheus-k8s-0        Bound    pvc-0b7c19b0-15a5-11ea-baa0-026d231574aa   40Gi       RWO            ocs-external-storagecluster-ceph-rbd   8d
    persistentvolumeclaim/my-prometheus-claim-prometheus-k8s-1        Bound    pvc-0b8aed3f-15a5-11ea-baa0-026d231574aa   40Gi       RWO            ocs-external-storagecluster-ceph-rbd   8d
  2. モニタリング configmap を編集します。

    $ oc -n openshift-monitoring edit configmap cluster-monitoring-config

    以下の例が示すように、OpenShift Data Foundation ストレージクラスを参照する config セクションを削除し、これを保存します。

    Before editing

    .
    .
    .
    apiVersion: v1
    data:
      config.yaml: |
        alertmanagerMain:
          volumeClaimTemplate:
            metadata:
              name: my-alertmanager-claim
            spec:
              resources:
                requests:
                  storage: 40Gi
              storageClassName: ocs-external-storagecluster-ceph-rbd
        prometheusK8s:
          volumeClaimTemplate:
            metadata:
              name: my-prometheus-claim
            spec:
              resources:
                requests:
                  storage: 40Gi
              storageClassName: ocs-external-storagecluster-ceph-rbd
    kind: ConfigMap
    metadata:
      creationTimestamp: "2019-12-02T07:47:29Z"
      name: cluster-monitoring-config
      namespace: openshift-monitoring
      resourceVersion: "22110"
      selfLink: /api/v1/namespaces/openshift-monitoring/configmaps/cluster-monitoring-config
      uid: fd6d988b-14d7-11ea-84ff-066035b9efa8
    
    
    .
    .
    .

    After editing

    .
    .
    .
    apiVersion: v1
    data:
      config.yaml: |
    kind: ConfigMap
    metadata:
      creationTimestamp: "2019-11-21T13:07:05Z"
      name: cluster-monitoring-config
      namespace: openshift-monitoring
      resourceVersion: "404352"
      selfLink: /api/v1/namespaces/openshift-monitoring/configmaps/cluster-monitoring-config
      uid: d12c796a-0c5f-11ea-9832-063cd735b81c
    .
    .
    .

    この例では、alertmanagerMain および prometheusK8s モニタリングコンポーネントは OpenShift Data Foundation PVC を使用しています。

  3. PVC を使用する Pod をリスト表示します。

    この例では、PVC を使用していた alertmanagerMain および prometheusK8s Pod は Terminating 状態にあります。これらの Pod が OpenShift Data Foundation PVC を使用しなくなった後に PVC を削除できます。

    $ oc get pod,pvc -n openshift-monitoring
    NAME                                               READY   STATUS      RESTARTS AGE
    pod/alertmanager-main-0                            3/3     Terminating   0      10h
    pod/alertmanager-main-1                            3/3     Terminating   0      10h
    pod/alertmanager-main-2                            3/3     Terminating   0      10h
    pod/cluster-monitoring-operator-84cd9df668-zhjfn   1/1     Running       0      18h
    pod/grafana-5db6fd97f8-pmtbf                       2/2     Running       0      10h
    pod/kube-state-metrics-895899678-z2r9q             3/3     Running       0      10h
    pod/node-exporter-4njxv                            2/2     Running       0      18h
    pod/node-exporter-b8ckz                            2/2     Running       0      11h
    pod/node-exporter-c2vp5                            2/2     Running       0      18h
    pod/node-exporter-cq65n                            2/2     Running       0      18h
    pod/node-exporter-f5sm7                            2/2     Running       0      11h
    pod/node-exporter-f852c                            2/2     Running       0      18h
    pod/node-exporter-l9zn7                            2/2     Running       0      11h
    pod/node-exporter-ngbs8                            2/2     Running       0      18h
    pod/node-exporter-rv4v9                            2/2     Running       0      18h
    pod/openshift-state-metrics-77d5f699d8-69q5x       3/3     Running       0      10h
    pod/prometheus-adapter-765465b56-4tbxx             1/1     Running       0      10h
    pod/prometheus-adapter-765465b56-s2qg2             1/1     Running       0      10h
    pod/prometheus-k8s-0                               6/6     Terminating   1      9m47s
    pod/prometheus-k8s-1                               6/6     Terminating   1      9m47s
    pod/prometheus-operator-cbfd89f9-ldnwc             1/1     Running       0      43m
    pod/telemeter-client-7b5ddb4489-2xfpz              3/3     Running       0      10h
    
    NAME                                                      STATUS  VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS                  AGE
    persistentvolumeclaim/ocs-alertmanager-claim-alertmanager-main-0   Bound    pvc-2eb79797-1fed-11ea-93e1-0a88476a6a64   40Gi       RWO            ocs-external-storagecluster-ceph-rbd   19h
    persistentvolumeclaim/ocs-alertmanager-claim-alertmanager-main-1   Bound    pvc-2ebeee54-1fed-11ea-93e1-0a88476a6a64   40Gi       RWO            ocs-external-storagecluster-ceph-rbd   19h
    persistentvolumeclaim/ocs-alertmanager-claim-alertmanager-main-2   Bound    pvc-2ec6a9cf-1fed-11ea-93e1-0a88476a6a64   40Gi       RWO            ocs-external-storagecluster-ceph-rbd   19h
    persistentvolumeclaim/ocs-prometheus-claim-prometheus-k8s-0        Bound    pvc-3162a80c-1fed-11ea-93e1-0a88476a6a64   40Gi       RWO            ocs-external-storagecluster-ceph-rbd   19h
    persistentvolumeclaim/ocs-prometheus-claim-prometheus-k8s-1        Bound    pvc-316e99e2-1fed-11ea-93e1-0a88476a6a64   40Gi       RWO            ocs-external-storagecluster-ceph-rbd   19h
  4. 関連する PVC を削除します。ストレージクラスを使用するすべての PVC を削除してください。

    $ oc delete -n openshift-monitoring pvc <pvc-name> --wait=true --timeout=5m

4.2. OpenShift Data Foundation からの OpenShift Container Platform レジストリーの削除

このセクションを使用して、OpenShift Data Foundation から OpenShift Container Platform レジストリーをクリーンアップします。代替ストレージを設定する必要がある場合は、image registry を参照してください。

OpenShift Container Platform レジストリーの設定の一部として作成される PVC は openshift-image-registry namespace に置かれます。

前提条件

  • イメージレジストリーは OpenShift Data Foundation PVC を使用するように設定されている。

手順

  1. configs.imageregistry.operator.openshift.io オブジェクトを編集し、storage セクションのコンテンツを削除します。

    $ oc edit configs.imageregistry.operator.openshift.io

    編集前

    .
    .
    .
    storage:
      pvc:
        claim: registry-cephfs-rwx-pvc
    .
    .
    .

    編集後

    .
    .
    .
    storage:
      emptyDir: {}
    .
    .
    .

    この例では、PVC は registry-cephfs-rwx-pvc と呼ばれ、これは安全に削除できます。

  2. PVC を削除します。

    $ oc delete pvc <pvc-name> -n openshift-image-registry --wait=true --timeout=5m

4.3. OpenShift Data Foundation からのクラスターロギング Operator の削除

このセクションでは、クラスターロギング Operator を OpenShift Data Foundation からクリーンアップします。

クラスターロギング Operator の設定の一部として作成される Persistent Volume Claims (PVC) は openshift-logging namespace にあります。

前提条件

  • クラスターロギングインスタンスは、OpenShift Data Foundation PVC を使用するように設定されている。

手順

  1. namespace の ClusterLogging インスタンスを削除します。

    $ oc delete clusterlogging instance -n openshift-logging --wait=true --timeout=5m

    openshift-logging namespace の PVC は安全に削除できます。

  2. PVC を削除します。

    $ oc delete pvc <pvc-name> -n openshift-logging --wait=true --timeout=5m
    <pvc-name>
    PVC の名前です。

4.4. 外部 IBM FlashSystem シークレットの削除

アンインストール時に、OpenShift Data Foundation から FlashSystem シークレットをクリーンアップする必要があります。このシークレットは、外部の IBM FlashSystem Storage を設定する際に作成されます。Creating an OpenShift Data Foundation Cluster for external IBM FlashSystem storageを参照してください。

手順

  • 以下のコマンドを使用して IBM FlashSystem シークレットを削除します。

    $ oc delete secret -n openshift-storage ibm-flashsystem-storage
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

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

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.