3.6. マネージドクラスターへの OpenShift Data Foundation のインストール


2 つの OpenShift Container Platform クラスター間でストレージレプリケーションを設定するには、先に OpenShift Data Foundation Operator を各マネージドクラスターにインストールする必要があります。

前提条件

  • OpenShift Data Foundation の外部デプロイメントのハードウェア要件を満たしていることを確認してください。ハードウェア要件の詳細は、外部モードの要件 を参照してください。

手順

  1. 各マネージドクラスターに最新の OpenShift Data Foundation クラスターをインストールして設定します。
  2. Operator をインストールした後、Full deployment タイプおよび Connect with external storage platform オプションを使用して、StorageSystem を作成します。バッキングストレージのタイプRed Hat Ceph Storage とします。

    詳しい手順は、外部モードでの OpenShift Data Foundation のデプロイ を参照してください。

    ceph-external-cluster-details-exporter.py スクリプトで次のフラグを使用します。

    1. 少なくとも、ceph-external-cluster-details-exporter.py script で次の 3 つのフラグを使用する必要があります。

      --rbd-data-pool-name
      OpenShift Container Platform の RHCS デプロイメント中に作成された RBD プールの名前を使用します。たとえば、プールを rbdpool と呼ぶことができます。
      --rgw-endpoint
      <ip_address>:<port> の形式でエンドポイントを指定します。これは、設定している OpenShift Container Platform クラスターと同じサイトで実行されている RGW デーモンの RGW IP です。
      --run-as-user
      サイトごとに異なるクライアント名を使用します。
    2. RHCS の展開中にデフォルト値が使用された場合、次のフラグは optional です。

      --cephfs-filesystem-name
      OpenShift Container Platform の RHCS デプロイメント中に作成した CephFS ファイルシステムの名前を使用すると、デフォルトのファイルシステム名は cephfs になります。
      --cephfs-data-pool-name
      OpenShift Container Platform の RHCS デプロイメント中に作成した CephFS データプールの名前で、デフォルトプールは cephfs.data と呼ばれます。
      --cephfs-metadata-pool-name
      OpenShift Container Platform の RHCS デプロイメント中に作成した CephFS メタデータプールの名前で、デフォルトプールは cephfs.meta と呼ばれます。
    3. ブートストラップノード ceph1 で次のコマンドを実行して、datacenter1 と datacenter2 の RGW エンドポイントの IP を取得します。

      ceph orch ps | grep rgw.objectgw

      出力例:

      rgw.objectgw.ceph3.mecpzm  ceph3  *:8080       running (5d)     31s ago   7w     204M        -  16.2.7-112.el8cp
      rgw.objectgw.ceph6.mecpzm  ceph6  *:8080       running (5d)     31s ago   7w     204M        -  16.2.7-112.el8cp
      host ceph3.example.com
      host ceph6.example.com

      出力例:

      ceph3.example.com has address 10.0.40.24
      ceph6.example.com has address 10.0.40.66
    4. ブートストラップされたノード ceph1 上の最初の OpenShift Container Platform マネージドクラスター cluster1 用に設定されたパラメーターを使用して ceph-external-cluster-details-exporter.py を実行します。

      python3 ceph-external-cluster-details-exporter.py --rbd-data-pool-name rbdpool --cephfs-filesystem-name cephfs --cephfs-data-pool-name cephfs.cephfs.data  --cephfs-metadata-pool-name cephfs.cephfs.meta --<rgw-endpoint> XXX.XXX.XXX.XXX:8080 --run-as-user client.odf.cluster1 > ocp-cluster1.json
      注記

      環境に応じて <rgw-endpoint> XXX.XXX.XXX.XXX を変更します。

    5. ブートストラップされたノード ceph1 上の最初の OpenShift Container Platform マネージドクラスター cluster2 用に設定されたパラメーターを使用して ceph-external-cluster-details-exporter.py を実行します。

      python3 ceph-external-cluster-details-exporter.py --rbd-data-pool-name rbdpool --cephfs-filesystem-name cephfs --cephfs-data-pool-name cephfs.cephfs.data  --cephfs-metadata-pool-name cephfs.cephfs.meta --rgw-endpoint XXX.XXX.XXX.XXX:8080 --run-as-user client.odf.cluster2 > ocp-cluster2.json
      注記

      環境に応じて <rgw-endpoint> XXX.XXX.XXX.XXX を変更します。

      • ブートストラップクラスター (ceph1) で生成された 2 つのファイル ocp-cluster1.jsonocp-cluster2.json をローカルマシンに保存します。
      • 外部 OpenShift Data Foundation がデプロイされている cluster1 上の OpenShift Container Platform コンソールで、ファイル ocp-cluster1.json の内容を使用します。
      • 外部 OpenShift Data Foundation がデプロイされている cluster2 上の OpenShift Container Platform コンソールで、ファイル ocp-cluster2.json の内容を使用します。
  3. 設定を確認し、Create StorageSystem を選択します。
  4. 以下のコマンドを使用して、各マネージドクラスターで OpenShift Data Foundation が正常にデプロイされたことを検証します。

    $ oc get storagecluster -n openshift-storage ocs-external-storagecluster -o jsonpath='{.status.phase}{"\n"}'

    Multicloud Gateway (MCG) の場合:

    $ oc get noobaa -n openshift-storage noobaa -o jsonpath='{.status.phase}{"\n"}'

    ステータスの結果が、プライマリーマネージドクラスターセカンダリーマネージドクラスター の両方のクエリーに対して Ready になるまで待ちます。

  5. OpenShift Web コンソールで、Installed Operators OpenShift Data Foundation Storage System ocs-external-storagecluster-storagesystem Resources の順に移動します。StorageClusterStatusReady で、横に緑色のチェックマークが付いていることを確認します。
  6. RBD と CephFS ボリュームの読み取りアフィニティーを、最も近いデータセンターから提供できるようにします。

    1. プライマリーマネージドクラスターで、すべてのノードにラベルを付けます。

      $ oc label nodes --all metro-dr.openshift-storage.topology.io/datacenter=DC1

      以下のコマンドを実行して、読み取りアフィニティーを有効にします。

      $ oc patch storageclusters.ocs.openshift.io -n openshift-storage ocs-external-storagecluster -p '{"spec":{"csi":{"readAffinity":{"enabled":true,"crushLocationLabels":["metro-dr.openshift-storage.topology.io/datacenter"]}}}}' --type=merge
      $ oc delete po -n openshift-storage -l 'app in (csi-cephfsplugin,csi-rbdplugin)'
    2. セカンダリーマネージドクラスターで、すべてのノードにラベルを付けます。

      $ oc label nodes --all metro-dr.openshift-storage.topology.io/datacenter=DC2

      以下のコマンドを実行して、読み取りアフィニティーを有効にします。

      $ oc patch storageclusters.ocs.openshift.io -n openshift-storage ocs-external-storagecluster -p '{"spec":{"csi":{"readAffinity":{"enabled":true,"crushLocationLabels":["metro-dr.openshift-storage.topology.io/datacenter"]}}}}' --type=merge
      $ oc delete po -n openshift-storage -l 'app in (csi-cephfsplugin,csi-rbdplugin)'
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.