Menu Close

ベアメタルインフラストラクチャーを使用した OpenShift Data Foundation のデプロイ

Red Hat OpenShift Data Foundation 4.9

ベアメタルインフラストラクチャーでローカルストレージを使用した OpenShift Container Storage のデプロイ手順

概要

Red Hat OpenShift Data Foundation 4.9 をインストールし、ベアメタルインフラストラクチャーでローカルストレージを使用する方法については、本書をお読みください。

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

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 をクリックします。

前書き

Red Hat OpenShift Data Foundation 4.9 は、接続環境または非接続環境での既存の Red Hat OpenShift Container Platform (RHOCP) ベアメタルクラスターへのデプロイメントをサポートし、プロキシー環境に対する追加設定なしのサポートを提供します。

ベアメタルでは、内部と外部の両方の OpenShift Data Foundation クラスターがサポートされます。デプロイメントの要件 についての詳細は、『 デプロイメントのプランニング』および「OpenShift Data Foundation のデプロイの準備 」を 参照してください。

OpenShift Data Foundation をデプロイするには、要件に適したデプロイメントプロセスを実行します。

第1章 OpenShift Data Foundation のデプロイの準備

ローカルストレージデバイスを使用して OpenShift Data Foundation を OpenShift Container Platform にデプロイすると、内部クラスターリソースを作成できます。この方法では、ベースサービスを内部でプロビジョニングします。その後、すべてのアプリケーションは追加のストレージクラスにアクセスできます。

ローカルストレージを使用して Red Hat OpenShift Data Foundation のデプロイメントを開始する前に、リソース要件を満たしていることを確認してください。ローカルストレージデバイスを使用して OpenShift Data Foundation をインストールするための要件について参照してください。

上記を処理した後に、指定した順序で以下の手順を実行します。

1.1. ローカルストレージデバイスを使用して OpenShift Data Foundation をインストールするための要件

ノードの要件

クラスターは、それぞれローカルに接続されたストレージデバイスを持つ 3 つ以上の OpenShift Container Platform ワーカーノードで構成される必要があります。

  • 選択した 3 つのノードには、OpenShift Data Foundation で使用できる raw ブロックデバイスが少なくとも 1 つ必要です。
  • 使用するデバイスは空である必要があります。ディスクには物理ボリューム (PV)、ボリュームグループ (VG)、または論理ボリューム (LV) を含めないでください。

詳細は、プランニングガイドのリソース要件 のセクションを参照してください。

Regional-DR 要件 [開発者プレビュー]

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

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

詳細な要件は、Regional-DR requirements および RHACM requirements を参照してください。

Arbiter ストレッチクラスターの要件 [テクノロジープレビュー]

この例では、3 番目のゾーンを Arbiter の場所とした上で、単一クラスターが 2 つのゾーンに展開されます。これはテクノロジープレビュー機能であり、現時点では OpenShift Container Platform オンプレミスでのデプロイメント用とされています。

詳細な要件および手順は、Configuring OpenShift Data Foundation for Metro-DR stretch clusterを参照してください。

注記

柔軟なスケーリングおよび Arbiter はどちらもスケーリングロジックの競合がある場合も同時に有効にすることはできません。Flexible scaling を使用すると、1 度に 1 つのノードを OpenShift Data Foundation クラスターに追加することができます。Arbiter クラスターでは、2 つのデータゾーンごとに 1 つ以上のノードを追加する必要があります。

compact モードの要件

OpenShift Data Foundation は、3 ノードの OpenShift のコンパクトなベアメタルクラスターにインストールできます。ここでは、すべてのワークロードが 3 つの強力なマスターノードで実行されます。ワーカーノードまたはストレージノードは含まれません。

compact モードで OpenShift Container Platform を設定するには、3 ノードクラスター の設定について、またエッジデプロインメン トの 3 ノードアーキテクチャーの提供 について参照してください。

ノードの最小要件 [テクノロジープレビュー]

OpenShift Data Foundation クラスターは、標準のデプロイメントリソース要件を満たしていない場合に、最小の設定でデプロイされます。

詳細は、プランニングガイドのリソース要件 のセクションを参照してください。

1.2. Red Hat Enterprise Linux ベースのノードでのコンテナーのファイルシステムアクセスの有効化

ユーザーによってプロビジョニングされるインフラストラクチャー (UPI) で Red Hat Enterprise Linux がベースの OpenShift Data Foundation にワーカーノードを含めて OpenShift Container Storage をデプロイしても自動的に、基盤の Ceph ファイルシステムへのコンテナーアクセスが提供されるわけではありません。

注記

Red Hat Enterprise Linux CoreOS(RHCOS)をベースとするホストの場合は、この手順を省略します。

手順

  1. Red Hat Enterprise Linux ベースのノードにログインし、ターミナルを開きます。
  2. クラスター内の各ノードについて、以下を実行します。

    1. ノードが rhel-7-server-extras-rpms リポジトリーにアクセスできることを確認します。

      # subscription-manager repos --list-enabled | grep rhel-7-server

      出力に rhel-7-server-rpmsrhel-7-server-extras-rpms の両方が表示されない場合は、以下のコマンドを実行して各リポジトリーを有効にします。

      # subscription-manager repos --enable=rhel-7-server-rpms
      # subscription-manager repos --enable=rhel-7-server-extras-rpms
    2. 必要なパッケージをインストールします。

      # yum install -y policycoreutils container-selinux
    3. SELinux での Ceph ファイルシステムのコンテナーの使用を永続的に有効にします。

      # setsebool -P container_use_cephfs on

1.3. Vault でのキー値のバックエンドパスおよびポリシーの有効化

前提条件

  • Vault への管理者アクセス。
  • 注: 後に変更することはできないため、命名規則に基づいてバックエンド path として一意のパス名を選択します。

手順

  1. Vault で Key/Value (KV) バックエンドパスを有効にします。

    Vault KV シークレットエンジン API の場合は、バージョン 1 を使用します。

    $ vault secrets enable -path=ocs kv

    Vault KV シークレットエンジン API の場合は、バージョン 2 です。

    $ vault secrets enable -path=ocs kv-v2
  2. 以下のコマンドを使用して、シークレットでの書き込み操作または削除操作の実行をユーザーを制限するポリシーを作成します。

    echo '
    path "ocs/*" {
      capabilities = ["create", "read", "update", "delete", "list"]
    }
    path "sys/mounts" {
    capabilities = ["read"]
    }'| vault policy write ocs -
  3. 上記のポリシーに一致するトークンを作成します。

    $ vault token create -policy=ocs -format json

第2章 ローカルストレージデバイスを使用した OpenShift Data Foundation のデプロイ

OpenShift Container Platform がすでにインストールされているベアメタルインフラストラクチャーに OpenShift Data Foundation をデプロイします。

また、OpenShift Data Foundation で Multicloud Object Gateway (MCG) コンポーネントのみをデプロイすることもできます。詳細は、Deploy standalone Multicloud Object Gateway を参照してください。

OpenShift Data Foundation をデプロイするには、以下の手順を実行します。

2.1. ローカルストレージ Operator のインストール

ローカルストレージデバイスに Red Hat OpenShift Data Foundation クラスターを作成する前に、Operator Hub からローカルストレージ Operator をインストールします。

手順

  1. OpenShift Web コンソールにログインします。
  2. Operators → OperatorHub をクリックします。
  3. Filter by keyword ボックスに local storage を入力し、Operator の一覧から Local Storage Operator を見つけ、これをクリックします。
  4. Install Operator ページで、以下のオプションを設定します。

    1. channel を ana または stable として更新します。
    2. インストールモードに A specific namespace on the cluster を選択します。
    3. Installed Namespace に Operator recommended namespace openshift-local-storage を選択します
    4. 承認を Automatic として更新します。
  5. Install をクリックします。

検証手順

  • Local Storage Operator に、インストールが正常に実行されたことを示す緑色のチェックマークが表示されていることを確認します。

2.2. 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 クラスターにアクセスできる。
  • Red Hat OpenShift Container Platform クラスターにワーカーノードが少なくとも 3 つある。
  • その他のリソース要件については、『デプロイメントのプランニング』ガイドを参照してください。
重要
  • OpenShift Data Foundation のクラスター全体でのデフォルトノードセレクターを上書きする必要がある場合は、コマンドラインインターフェースで以下のコマンドを使用し、openshift-storage namespace の空のノードセレクターを指定できます (この場合、openshift-storage namespace を作成します)。

    $ oc annotate namespace openshift-storage openshift.io/node-selector=
  • ノードに Red Hat OpenShift Data Foundation リソースのみがスケジュールされるように infra のテイントを設定します。これにより、サブスクリプションコストを節約できます。詳細は、ストレージリソースの管理および割り当てガイドのHow to use dedicated worker nodes for Red Hat OpenShift Data Foundationの章を参照してください。

手順

  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.9 として更新します。
    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 をクリックします。
注記

すべてのデフォルト設定を使用することが推奨されます。これを変更すると、予期しない動作が発生する可能性があります。変更後にどうなるのかを認識している場合に限り変更します。

検証手順

  • OpenShift Data Foundation Operator に、インストールが正常に実行されたことを示す緑色のチェックマークが表示されていることを確認します。
  • Operator が正常にインストールされると、Web console update is available メッセージを含むポップアップがユーザーインターフェースに表示されます。このポップアップから Web コンソールのリフレッシュ をクリックして、反映するコンソールを変更します。

    • Web コンソールで、Operators に移動し、OpenShift Data Foundation が利用可能かどうかを確認します。
重要

OpenShift Data Foundation Operator のインストール後に console プラグインオプションが自動的に有効にされていない場合は、これを有効にする必要があります。

console プラグインを有効にする方法の詳細は、「 Red Hat OpenShift Data Foundation console プラグインの有効化 」を参照してください。

2.3. Multus ネットワークの作成

OpenShift Container Platform は、Multus CNI プラグインを使用して CNI プラグインのチェーンを許可します。クラスターのインストール時に、デフォルトの Pod ネットワークを設定できます。デフォルトのネットワークは、クラスターのすべての通常のネットワークトラフィックを処理します。利用可能な CNI プラグインに基づいて 追加のネットワーク を定義し、1 つまたは複数のネットワークを Pod に割り当てることができます。追加のネットワークを Pod に割り当てるには、インターフェースの割り当て方法を定義する設定を作成する必要があります。それぞれのインターフェースは、NetworkAttachmentDefinition カスタムリソース (CR) を使用して指定します。それぞれの NetworkAttachmentDefinition 内の CNI 設定は、インターフェースの作成方法を定義します。

OpenShift Data Foundation は、macvlan と呼ばれる CNI プラグインを使用します。macvlan ベースの追加ネットワークを作成することで、ホスト上の Pod が物理ネットワークインターフェースを使用して他のホストやそれらのホストの Pod と通信できます。macvlan ベースの追加ネットワークに割り当てられる各 Pod には固有の MAC アドレスが割り当てられます。

2.3.1. ネットワーク接続定義の作成

Multus を使用するには、正しいネットワーク設定ですでに機能するクラスターが必要です。Recommended network configuration and requirements for a Multus configurationを参照してください。新規に作成された NetworkAttachmentDefinition (NAD) は、Storage Cluster のインストール時に選択できます。これは、Storage Cluster の前に作成する必要のある理由です。

『Planning Guide』で説明されているように、作成する Multus ネットワークは、OpenShift Data Foundation トラフィックで利用可能なネットワークインターフェースの数によって異なります。すべてのストレージトラフィックを 2 つのインターフェース (デフォルトの OpenShift SDN に使用されるインターフェース 1 つ) に分割するか、ストレージストレージトラフィック (パブリック) およびストレージレプリケーショントラフィック (プライベートまたはクラスター) にさらに分割することもできます。

以下は、同じインターフェース上のすべてのストレージトラフィック (パブリックおよびクラスター) の NetworkAttachmentDefinition の例です。すべてのスケジュール可能なノードに 1 つの追加インターフェースが必要になります (OpenShift のデフォルト: 個別のネットワークインターフェース上の OpenShift のデフォルト)。

apiVersion: "k8s.cni.cncf.io/v1"
kind: NetworkAttachmentDefinition
metadata:
  name: ocs-public-cluster
  namespace: openshift-storage
spec:
  config: '{
  	"cniVersion": "0.3.1",
  	"type": "macvlan",
  	"master": "ens2",
  	"mode": "bridge",
  	"ipam": {
    	    "type": "whereabouts",
    	    "range": "192.168.1.0/24"
  	}
  }'
注記

すべてのネットワークインターフェース名は、Multus ネットワークに接続されているすべてのノードで同じである必要があります (例: ocs-public-cluster の場合は ens2)。

以下は、個別の Multus ネットワーク上のストレージトラフィックの NetworkAttachmentDefinition の例になります。これは、クライアントストレージトラフィックのパブリックおよびレプリケーショントラフィック用のクラスターです。OSD Pod をホストする OpenShift ノードに 2 つの追加インターフェースと、他のスケジュール可能なすべてのノードで 1 つの追加インターフェース (OpenShift デフォルト SDN) が必要です。

apiVersion: "k8s.cni.cncf.io/v1"
kind: NetworkAttachmentDefinition
metadata:
  name: ocs-public
  namespace: openshift-storage
spec:
  config: '{
  	"cniVersion": "0.3.1",
  	"type": "macvlan",
  	"master": "ens2",
  	"mode": "bridge",
  	"ipam": {
    	    "type": "whereabouts",
    	    "range": "192.168.1.0/24"
  	}
  }'

NetworkAttachmentDefinition の例:

apiVersion: "k8s.cni.cncf.io/v1"
kind: NetworkAttachmentDefinition
metadata:
  name: ocs-cluster
  namespace: openshift-storage
spec:
  config: '{
  	"cniVersion": "0.3.1",
  	"type": "macvlan",
  	"master": "ens3",
  	"mode": "bridge",
  	"ipam": {
    	    "type": "whereabouts",
    	    "range": "192.168.2.0/24"
  	}
  }'
注記

すべてのネットワークインターフェース名は、Multus ネットワークにアタッチされたすべてのノードで同じである必要があります (つまり、ocs-public の場合は ens2ocs-clusterの場合は ens3 です)。

2.4. ベアメタルでの OpenShift Data Foundation クラスターの作成

前提条件

手順

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

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

  2. OpenShift Data Foundation Operator をクリックした後、Create StorageSystem をクリックします。
  3. Backing storage ページで、以下を実行します。

    1. Create a new StorageClass using the local storage devices オプションを選択します。
    2. Advanced を展開し、Deployment type オプションで Full Deployment を選択します。
    3. 次へをクリックします。

      重要

      インストールされていない場合に、ローカルストレージ Operator をインストールすることを求めるプロンプトが出されます。Install をクリックし、ローカルストレージ Operator のインストールで説明されているように手順に従います。

  4. Create local volume set ページで、以下の情報を提供します。

    1. LocalVolumeSet および StorageClass の名前を入力します。

      デフォルトで、ローカルボリュームセット名がストレージクラス名について表示されます。名前を変更できます。

    2. 以下のいずれかを選択します。

      • Disks on all nodes

        すべてのノードにある選択したフィルターに一致する利用可能なディスクを使用します。

      • Disks on selected nodes

        選択したノードにある選択したフィルターにのみ一致する利用可能なディスクを使用します。

        重要
        • 柔軟なスケーリング機能は、3 つ以上のノードで作成したストレージクラスターが 3 つ以上のアベイラビリティーゾーンの最低要件未満に分散されている場合にのみ有効になります。

          この機能は、Red Hat OpenShift Data Foundation バージョン 4.7 以降の新規デプロイメントでのみ利用できます。以前のバージョンからバージョン 4.7 以降にアップグレードされたストレージクラスターは、柔軟なスケーリングをサポートしません。詳細は、New features section of Release NotesFlexible scaling of OpenShift Data Foundation cluster を参照してください。

        • 選択したノードが集約された 30 CPU および 72 GiB の RAM の OpenShift Data Foundation クラスターの要件と一致しない場合は、最小クラスターがデプロイされます。

          ノードの最小要件については、プランニングガイドのリソース要件セクションを参照してください。

    3. Disk Type の利用可能な一覧から、SSD/NVMe を選択します。
    4. Advanced セクションを拡張し、以下のオプションを設定します。

      ボリュームモード

      デフォルトではブロックが選択されます。

      デバイスタイプ

      ドロップダウンリストから 1 つ以上のデバイスタイプを選択します。

      ディスクサイズ

      デバイスの最小サイズ 100GB と、含める必要のあるデバイスの最大サイズを設定します。

      ディスクの最大数の制限

      これは、ノードで作成できる PV の最大数を示します。このフィールドが空のままの場合、PV は一致するノードで利用可能なすべてのディスクに作成されます。

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

      LocalVolumeSet の作成を確認するポップアップが表示されます。

    6. Yes をクリックして続行します。
  5. Capacity and nodes ページで、以下を設定します。

    1. Available raw capacity には、ストレージクラスに関連付けられた割り当てられたすべてのディスクに基づいて容量の値が設定されます。これには少し時間がかかります。Selected nodes 一覧には、ストレージクラスに基づくノードが表示されます。
    2. Next をクリックします。
  6. オプション: セキュリティー および ネットワーク ページで、要件に応じて以下を設定します。

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

      • クラスター全体の暗号化

        クラスター全体を暗号化します(ブロックおよびファイル)。

      • StorageClass の暗号化

        暗号化対応のストレージクラスを使用して、暗号化された永続ボリューム(ブロックのみ)を作成します。

    3. Connect to an external key management service チェックボックスを選択します。これはクラスター全体の暗号化の場合はオプションになります。

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

        1. OpenShift Data Foundation 専用かつ特有のキー値のシークレットパスを Backend Path に入力します。
        2. オプション: TLS Server Name および Vault Enterprise Namespace を入力します。
        3. それぞれの PEM でエンコードされた証明書ファイルをアップロードし、CA 証明書クライアント証明書、および クライアントの秘密鍵 を指定します。
        4. 保存 をクリックします。
    4. 以下のいずれかを選択します。

      • Default (SDN)

        単一のネットワークを使用している場合。

      • Custom (Multus)

        複数のネットワークインターフェースを使用している場合。

        1. ドロップダウンメニューから Public Network Interface を選択します。
        2. ドロップダウンメニューから Cluster Network Interface を選択します。

          注記

          追加のネットワークインターフェイスを1つだけ使用している場合は、単一のNetworkAttachementDefinition(Public Network Interfaceにはocs-public-cluster)を選択し、Cluster Network Interfaceは空白のままにします。

    5. Next をクリックします。
  7. Review and create ページで、設定の詳細を確認します。

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

  8. Create StorageSystem をクリックします。

検証手順

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

    1. OpenShift Web コンソールで、Installed OperatorsOpenShift Data FoundationStorage Systemocs-storagecluster-storagesystemResources の順に移動します。
    2. StorageClusterStatusReady になっており、それの横に緑色のチェックマークが表示されていることを確認します。
  • 柔軟なスケーリングがストレージクラスターで有効にされているかどうかを確認するには、以下の手順を実行します(arbiter モードの場合、柔軟なスケーリングが無効になります)。

    1. OpenShift Web コンソールで、Installed OperatorsOpenShift Data FoundationStorage Systemocs-storagecluster-storagesystemResourcesocs-storagecluster の順に移動します。
    2. YAML タブで、spec セクションのキー flexibleScalingstatus セクションの flexibleScaling を検索します。flexible scaling が true であり、failureDomain が host に設定されている場合、柔軟なスケーリング機能が有効になります。

      spec:
      flexibleScaling: true
      […]
      status:
      failureDomain: host

関連情報

2.5. OpenShift Data Foundation デプロイメントの確認

OpenShift Data Foundation が正常にデプロイされていることを確認するには、以下を実行します。

2.5.1. Pod の状態の確認

手順

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

    注記

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

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

  3. Running タブおよび Completed タブをクリックして、以下の Pod が Running 状態および Completed 状態にあることを確認します。

    表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)

    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)

    [MON]

    rook-ceph-mon-*

    (ストレージノードに分散する 3 Pod)

    MGR

    rook-ceph-mgr-*

    (任意のストレージノードに 1 Pod)

    MDS

    rook-ceph-mds-ocs-storagecluster-cephfilesystem-*

    (ストレージノードに分散する 2 Pod)

    RGW

    rook-ceph-rgw-ocs-storagecluster-cephobjectstore-* (任意のストレージノードに 1 Pod)

    CSI

    • cephfs

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

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

    rook-ceph-crashcollector

    rook-ceph-crashcollector-*

    (各ストレージノードに 1 Pod)

    OSD

    • rook-ceph-osd-* (各デバイス用に 1 Pod)
    • rook-ceph-osd-prepare-ocs-deviceset-* (各デバイス用に 1 Pod)

2.5.2. OpenShift Data Foundation クラスターの正常性の確認

手順

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

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

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

手順

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

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

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

2.5.4. OpenShift Data Foundation 固有のストレージクラスが存在することの確認

手順

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

    • ocs-storagecluster-ceph-rbd
    • ocs-storagecluster-cephfs
    • openshift-storage.noobaa.io
    • ocs-storagecluster-ceph-rgw

2.5.5. Multus ネットワークの確認

Multus がクラスターで機能しているかどうかを判別するには、Multus ネットワークを確認します。

手順

ネットワーク設定の選択に応じて、OpenShift Data Foundation Operator は以下の 1 つを行います。

  • 単一の NetworkAttachmentDefinition(例:ocs-public-cluster)のみが Public Network Interface に対して選択される場合、アプリケーション Pod と OpenShift Data Foundation クラスター間のトラフィックはこのネットワークで生じます。さらに、クラスターは、このネットワークを OSD 間のレプリケーションに使用し、OSD 間のトラフィックを再リバランスするように自己設定します。
  • NetworkAttachmentDefinitions(例:ocs-public および ocs-cluster)が Public Network Interface にそれぞれ選択されており、Storage Cluster のインストール時に Cluster Network Interface にそれぞれ選択される場合、クライアントストレージトラフィックは OSD 間でのレプリケーションおよびクラスターネットワークについてパブリックネットワークおよびクラスターネットワークに置かれます。

ネットワーク構成が正しいことを確認するには、以下の手順を実施します。

OpenShift コンソールで、Installed OperatorsOpenShift Data FoundationStorage Systemocs-storagecluster-storagesystemResourcesocs-storagecluster の順に移動します。

YAML タブで、spec セクションで network を検索し、設定がネットワークインターフェースの選択に適したことを確認します。この例では、クライアントストレージトラフィックをストレージレプリケーショントラフィックから分離するためのものです。

出力サンプル

[..]
spec:
  [..]
  network:
    ipFamily: IPv4
    provider: multus
    selectors:
      cluster: openshift-storage/ocs-cluster
      public: openshift-storage/ocs-public
  [..]

コマンドラインインターフェースを使用してネットワーク設定が正しいことを確認するには、以下のコマンドを実行します。

$ oc get storagecluster ocs-storagecluster \
-n openshift-storage \
-o=jsonpath='{.spec.network}{"\n"}'

出力サンプル

{"ipFamily":"IPv4","provider":"multus","selectors":{"cluster":"openshift-storage/ocs-cluster","public":"openshift-storage/ocs-public"}}

OSD Pod が正しいネットワークを使用していることを確認します

openshift-storage namespace は OSD Pod の 1 つを使用して、Pod が正しいネットワークに接続されていることを確認します。この例では、クライアントストレージトラフィックをストレージレプリケーショントラフィックから分離するためのものです。

注記

両方が作成されると、OSD Pod のみが Multus パブリックおよびクラスターネットワークの両方に接続します。他のすべての OCS Pod は Multus パブリックネットワークに接続されます。

$ oc get -n openshift-storage $(oc get pods -n openshift-storage -o name -l app=rook-ceph-osd | grep 'osd-0') -o=jsonpath='{.metadata.annotations.k8s\.v1\.cni\.cncf\.io/network-status}{"\n"}'

出力サンプル

[{
    "name": "openshift-sdn",
    "interface": "eth0",
    "ips": [
        "10.129.2.30"
    ],
    "default": true,
    "dns": {}
},{
    "name": "openshift-storage/ocs-cluster",
    "interface": "net1",
    "ips": [
        "192.168.2.1"
    ],
    "mac": "e2:04:c6:81:52:f1",
    "dns": {}
},{
    "name": "openshift-storage/ocs-public",
    "interface": "net2",
    "ips": [
        "192.168.1.1"
    ],
    "mac": "ee:a0:b6:a4:07:94",
    "dns": {}
}]

コマンドラインインターフェースを使用して OSD Pod が正しいネットワークを使用していることを確認するには、以下のコマンドを実行します(jq ユーティリティーが必要です)。

$ oc get -n openshift-storage $(oc get pods -n openshift-storage -o name -l app=rook-ceph-osd | grep 'osd-0') -o=jsonpath='{.metadata.annotations.k8s\.v1\.cni\.cncf\.io/network-status}{"\n"}' | jq -r '.[].name'

出力サンプル

openshift-sdn
openshift-storage/ocs-cluster
openshift-storage/ocs-public

第3章 スタンドアロンの Multicloud Object Gateway のデプロイ

OpenShift Data Foundation で Multicloud Object Gateway コンポーネントのみをデプロイすると、デプロイメントで柔軟性が高まり、リソース消費を減らすことができます。このセクションでは、以下のステップで、スタンドアロンの Multicloud Object Gateway コンポーネントのみをデプロイします。

  • ローカルストレージ Operator のインストール
  • Red Hat OpenShift Data Foundation Operator のインストール
  • スタンドアロンの Multicloud Object Gateway の作成

3.1. ローカルストレージ Operator のインストール

ローカルストレージデバイスに Red Hat OpenShift Data Foundation クラスターを作成する前に、Operator Hub からローカルストレージ Operator をインストールします。

手順

  1. OpenShift Web コンソールにログインします。
  2. Operators → OperatorHub をクリックします。
  3. Filter by keyword ボックスに local storage を入力し、Operator の一覧から Local Storage Operator を見つけ、これをクリックします。
  4. Install Operator ページで、以下のオプションを設定します。

    1. channel を ana または stable として更新します。
    2. インストールモードに A specific namespace on the cluster を選択します。
    3. Installed Namespace に Operator recommended namespace openshift-local-storage を選択します
    4. 承認を Automatic として更新します。
  5. Install をクリックします。

検証手順

  • Local Storage Operator に、インストールが正常に実行されたことを示す緑色のチェックマークが表示されていることを確認します。

3.2. 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 クラスターにアクセスできる。
  • Red Hat OpenShift Container Platform クラスターにワーカーノードが少なくとも 3 つある。
  • その他のリソース要件については、『デプロイメントのプランニング』ガイドを参照してください。
重要
  • OpenShift Data Foundation のクラスター全体でのデフォルトノードセレクターを上書きする必要がある場合は、コマンドラインインターフェースで以下のコマンドを使用し、openshift-storage namespace の空のノードセレクターを指定できます (この場合、openshift-storage namespace を作成します)。

    $ oc annotate namespace openshift-storage openshift.io/node-selector=
  • ノードに Red Hat OpenShift Data Foundation リソースのみがスケジュールされるように infra のテイントを設定します。これにより、サブスクリプションコストを節約できます。詳細は、ストレージリソースの管理および割り当てガイドのHow to use dedicated worker nodes for Red Hat OpenShift Data Foundationの章を参照してください。

手順

  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.9 として更新します。
    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 をクリックします。
注記

すべてのデフォルト設定を使用することが推奨されます。これを変更すると、予期しない動作が発生する可能性があります。変更後にどうなるのかを認識している場合に限り変更します。

検証手順

  • OpenShift Data Foundation Operator に、インストールが正常に実行されたことを示す緑色のチェックマークが表示されていることを確認します。
  • Operator が正常にインストールされると、Web console update is available メッセージを含むポップアップがユーザーインターフェースに表示されます。このポップアップから Web コンソールのリフレッシュ をクリックして、反映するコンソールを変更します。

    • Web コンソールで、Operators に移動し、OpenShift Data Foundation が利用可能かどうかを確認します。
重要

OpenShift Data Foundation Operator のインストール後に console プラグインオプションが自動的に有効にされていない場合は、これを有効にする必要があります。

console プラグインを有効にする方法の詳細は、「 Red Hat OpenShift Data Foundation console プラグインの有効化 」を参照してください。

3.3. スタンドアロンの Multicloud Object Gateway の作成

このセクションを使用して、OpenShift Data Foundation で Multicloud Object Gateway コンポーネントのみを作成します。

前提条件

  • OpenShift Data Foundation Operator がインストールされていることを確認します。
  • (ローカルストレージデバイスを使用したデプロイのみ)Local Storage Operator がインストールされていることを確認します。
  • ストレージクラスがあり、これがデフォルトとして設定されていることを確認します。

手順

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

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

  2. OpenShift Data Foundation Operator をクリックした後、Create StorageSystem をクリックします。
  3. Backing storage ページで、Advanced を展開します。
  4. Deployment typeMulticloud Object Gateway を選択します。
  5. Next をクリックします。
  6. 必要に応じて、Security ページで Connect to an external key management service を選択します。

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

      1. OpenShift Data Foundation 専用で固有のキーバリューシークレットパスを Backend Path に入力します。
      2. オプション: TLS Server Name および Vault Enterprise Namespace を入力します。
      3. それぞれの PEM でエンコードされた証明書ファイルをアップロードし、CA 証明書クライアント証明書、および クライアントの秘密鍵 を提供します。
      4. 保存 をクリックします。
    4. Next をクリックします。
  7. Review and create ページで、設定の詳細を確認します。

    構成設定を変更するには、Back をクリックします。

  8. Create StorageSystem をクリックします。

検証手順

OpenShift Data Foundation クラスターが正常であることの確認
  1. OpenShift Web コンソールで、StorageOpenShift Data Foundation をクリックします。
  2. Overview タブの Status カードで Storage System をクリックし、表示されたポップアップからストレージシステムリンクをクリックします。

    1. Object タブの Status カードでObject ServiceData Resiliency の両方に緑色のチェックマークが表示されていることを確認します。
    2. Details カードで、MCG 情報が表示されることを確認します。
Pod の状態を確認します。
  1. OpenShift Web コンソールから WorkloadsPods をクリックします。
  2. Project ドロップダウンリストから openshift-storage を選択し、以下の Pod が Running 状態にあることを確認します。

    注記

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

    コンポーネント対応する Pod

    OpenShift Data Foundation Operator

    • ocs-operator-* (任意のワーカーノードに 1 Pod)
    • ocs-metrics-exporter-*(任意のワーカーノードに 1 Pod)
    • odf-operator-controller-manager-*(任意のワーカーノードに 1 Pod)
    • odf-console-*(任意のワーカーノードに 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)

第4章 OpenShift Data Foundation のアンインストール

4.1. 内部モードでの OpenShift Data Foundation のアンインストール

OpenShift Data Foundation を Internal モードでアンインストールするには、knowledge base article on Uninstalling OpenShift Data Foundation を参照してください。