Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

26.3. ローカルプロビジョナーの設定

OpenShift Container Platform は、ローカルデバイス用に PV を作成する場合や、再利用の有効化に使用されなくなり PV を消去する場合に、外部のプロビジョナーを使用します。

注記
  • ローカルボリュームのプロビジョナーは大半のプロビジョナーとは異なり、動的なプロビジョニングに対応していません。
  • ローカルボリュームのプロビジョナーを使用する場合には、管理者は、各ノードでローカルボリュームを事前設定して、 discovery ディレクトリーの下にマウントする必要がありますす。その後にプロビジョナーは各ボリュームについて PV の作成とクリーンアップを実行してボリュームを管理します。

ローカルプロビジョナーを設定します。

  1. ConfigMap を使用して外部プロビジョナーが、ストレージクラスとディレクトリーを関連付けられるように設定します。この設定は、プロビジョナーがデプロイされる前に作成する必要があります。 以下に例を示します。

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: local-volume-config
    data:
        storageClassMap: |
            local-ssd: 1
                hostDir:  /mnt/local-storage/ssd 2
                mountDir: /mnt/local-storage/ssd 3
            local-hdd:
                hostDir: /mnt/local-storage/hdd
                mountDir: /mnt/local-storage/hdd
    1
    ストレージクラス名
    2
    ホスト上のディレクトリーへのパス。/mnt/local-storage のサブディレクトリーでなければなりません。
    3
    プロビジョナー Pod のディレクトリーへのパス。ホストで使用されているディレクトリー構造と同じ構造を使用することを推奨します。 今回の例では、mountDir は省略可能です。
  2. (オプション) ローカルボリュームのプロビジョナーおよびその設定用にスタンドアロンの namespace を作成します。 例: oc new-project local-storage

上記の設定により、プロビジョナーは以下を作成します。

  • /mnt/local-storage/ssd ディレクトリーにマウントされる全サブディレクトリーに対して、local-ssd のストレージクラスを指定した PV 1 つ
  • /mnt/local-storage/hdd ディレクトリーにマウントされる全サブディレクトリーに対して、local-hdd のストレージクラスを指定した PV 1 つ