12.2. ストレージプロファイルの設定


ストレージプロファイルは、関連付けられたストレージクラスに基づいて推奨されるストレージ設定を提供します。ストレージクラスごとにストレージクラスが割り当てられます。

Containerized Data Importer (CDI) は、ストレージプロバイダーの機能を識別し、対話するように設定されている場合はストレージプロバイダーを認識します。

認識されたストレージタイプの場合、CDI は PVC の作成を最適化する値を提供します。ストレージプロファイルをカスタマイズして、ストレージクラスの自動設定を行うこともできます。CDI がストレージプロバイダーを認識しない場合は、ユーザーがストレージプロファイルを設定する必要があります。

重要

Red Hat OpenShift Data Foundation で OpenShift Virtualization を使用する場合は、仮想マシンディスクの作成時に RBD ブロックモードの永続ボリューム要求 (PVC) を指定します。RBD ブロックモードボリュームは、Ceph FS または RBD ファイルシステムモード PVC よりも効率が高く、優れたパフォーマンスを提供します。

RBD ブロックモードの PVC を指定するには、'ocs-storagecluster-ceph-rbd' ストレージクラスおよび VolumeMode: Block を使用します。

12.2.1. ストレージプロファイルのカスタマイズ

プロビジョナーのストレージクラスの StorageProfile オブジェクトを編集してデフォルトパラメーターを指定できます。これらのデフォルトパラメーターは、DataVolume オブジェクトで設定されていない場合にのみ永続ボリューム要求 (PVC) に適用されます。

ストレージクラスのパラメーターは変更できません。変更する必要がある場合は、ストレージクラスを削除して再作成します。その後、ストレージプロファイルに適用していたカスタマイズを再適用する必要があります。

ストレージプロファイルの空の status セクションは、ストレージプロビジョナーが Containerized Data Importer (CDI) によって認識されないことを示します。CDI で認識されないストレージプロビジョナーがある場合、ストレージプロファイルをカスタマイズする必要があります。この場合、管理者はストレージプロファイルに適切な値を設定し、割り当てが正常に実行されるようにします。

仮想マシンのスナップショットを作成する場合、ディスクのストレージクラスに複数の VolumeSnapshotClass が関連付けられていると警告が表示されます。その場合、ボリュームスナップショットクラスを 1 つ指定する必要があります。そうしないと、複数のボリュームスナップショットクラスを持つディスクはスナップショットリストから除外されます。

警告

データボリュームを作成し、YAML 属性を省略し、これらの属性がストレージプロファイルで定義されていない場合は、要求されたストレージは割り当てられず、基礎となる永続ボリューム要求 (PVC) は作成されません。

前提条件

  • OpenShift CLI (oc) がインストールされている。
  • 計画した設定がストレージクラスとそのプロバイダーでサポートされていることを確認してください。ストレージプロファイルに互換性のない設定を指定すると、ボリュームのプロビジョニングに失敗します。

手順

  1. ストレージプロファイルを編集します。この例では、プロビジョナーは CDI によって認識されません。

    $ oc edit storageprofile <storage_class>
    Copy to Clipboard Toggle word wrap
  2. ストレージプロファイルに設定する accessModes および volumeMode の値を指定します。以下に例を示します。

    ストレージプロファイルの例

    apiVersion: cdi.kubevirt.io/v1beta1
    kind: StorageProfile
    metadata:
      name: <unknown_provisioner_class>
    # ...
    spec:
      claimPropertySets:
      - accessModes:
        - ReadWriteOnce 
    1
    
        volumeMode: Filesystem 
    2
    
    status:
      provisioner: <unknown_provisioner>
      storageClass: <unknown_provisioner_class>
    Copy to Clipboard Toggle word wrap

    1
    accessModes を指定します。
    2
    volumeMode を指定します。

12.2.1.1. Web コンソールを使用してボリュームスナップショットクラスを指定する

仮想マシンのスナップショットを作成する場合、ディスクのストレージクラスに複数のボリュームスナップショットクラスが関連付けられていると警告が表示されます。その場合、ボリュームスナップショットクラスを 1 つ指定する必要があります。そうしないと、複数のボリュームスナップショットクラスを持つディスクはスナップショットリストから除外されます。

OpenShift Container Platform Web コンソールで、デフォルトのボリュームスナップショットクラスを指定できます。

手順

  1. Virtualization に重点を置いたビューから、Storage を選択します。
  2. VolumeSnapshotClasses をクリックします。
  3. リストからボリュームスナップショットクラスを選択します。
  4. Annotations の鉛筆アイコンをクリックします。
  5. 次の キー を入力します: snapshot.storage.kubernetes.io/is-default-class
  6. 次の を入力します: true
  7. Save をクリックします。

12.2.1.2. CLI を使用してボリュームスナップショットクラスを指定する

仮想マシンのスナップショットを作成する場合、ディスクのストレージクラスに複数のボリュームスナップショットクラスが関連付けられていると警告が表示されます。その場合、ボリュームスナップショットクラスを 1 つ指定する必要があります。そうしないと、複数のボリュームスナップショットクラスを持つディスクはスナップショットリストから除外されます。

使用するボリュームスナップショットクラスは、次のいずれかの方法で選択できます。

  • ストレージプロファイルの spec.snapshotClass を設定します。
  • デフォルトのボリュームスナップショットクラスを設定します。

前提条件

  • OpenShift CLI (oc) がインストールされている。

手順

  • 使用する VolumeSnapshotClass を設定します。以下に例を示します。

    apiVersion: cdi.kubevirt.io/v1beta1
    kind: StorageProfile
    metadata:
      name: ocs-storagecluster-ceph-rbd-virtualization
    spec:
      snapshotClass: ocs-storagecluster-rbdplugin-snapclass
    Copy to Clipboard Toggle word wrap
  • または、次のコマンドを実行して、デフォルトのボリュームスナップショットクラスを設定します。

    # oc patch VolumeSnapshotClass ocs-storagecluster-cephfsplugin-snapclass --type=merge -p '{"metadata":{"annotations":{"snapshot.storage.kubernetes.io/is-default-class":"true"}}}'
    Copy to Clipboard Toggle word wrap

12.2.1.3. 自動的に作成されたストレージプロファイルの表示

システムは、各ストレージクラスのストレージプロファイルを自動的に作成します。

前提条件

  • OpenShift CLI (oc) がインストールされている。

手順

  1. ストレージプロファイルのリストを表示するには、次のコマンドを実行します。

    $ oc get storageprofile
    Copy to Clipboard Toggle word wrap
  2. 特定のストレージプロファイルの詳細を取得するには、次のコマンドを実行します。

    $ oc describe storageprofile <name>
    Copy to Clipboard Toggle word wrap

    ストレージプロファイルの詳細例

    Name:         ocs-storagecluster-ceph-rbd-virtualization
    Namespace:
    Labels:       app=containerized-data-importer
                  app.kubernetes.io/component=storage
                  app.kubernetes.io/managed-by=cdi-controller
                  app.kubernetes.io/part-of=hyperconverged-cluster
                  app.kubernetes.io/version=4.17.2
                  cdi.kubevirt.io=
    Annotations:  <none>
    API Version:  cdi.kubevirt.io/v1beta1
    Kind:         StorageProfile
    Metadata:
      Creation Timestamp:  2023-11-13T07:58:02Z
      Generation:          2
      Owner References:
        API Version:           cdi.kubevirt.io/v1beta1
        Block Owner Deletion:  true
        Controller:            true
        Kind:                  CDI
        Name:                  cdi-kubevirt-hyperconverged
        UID:                   2d6f169a-382c-4caf-b614-a640f2ef8abb
      Resource Version:        4186799537
      UID:                     14aef804-6688-4f2e-986b-0297fd3aaa68
    Spec:
    Status:
      Claim Property Sets: 
    1
    
        accessModes:
          ReadWriteMany
        volumeMode:  Block
        accessModes:
          ReadWriteOnce
        volumeMode:  Block
        accessModes:
          ReadWriteOnce
        volumeMode:                   Filesystem
      Clone Strategy:                  csi-clone 
    2
    
      Data Import Cron Source Format:  snapshot 
    3
    
      Provisioner:                     openshift-storage.rbd.csi.ceph.com
      Snapshot Class:                  ocs-storagecluster-rbdplugin-snapclass
      Storage Class:                   ocs-storagecluster-ceph-rbd-virtualization
    Events:                            <none>
    Copy to Clipboard Toggle word wrap

    1
    Claim Property Sets は、仮想マシンディスクのプロビジョニングに使用される PVC モードを記述する AccessMode/VolumeMode ペアの順序付きリストです。
    2
    Clone Strategy 行は、使用するクローンストラテジーを示します。
    3
    Data Import Cron Source Format は、このストレージ上のゴールデンイメージが PVC として保存されるか、ボリュームスナップショットとして保存されるかを示します。

ストレージプロファイルを使用してストレージクラスのデフォルトクローン作成メソッドを設定して、クローンストラテジーを作成できます。ストレージベンダーが特定のクローン作成方法のみをサポートする場合などに、クローン作成ストラテジーを設定すると便利です。また、リソースの使用の制限やパフォーマンスの最大化を実現する手法を選択することもできます。

クローン作成ストラテジーは、ストレージプロファイルの cloneStrategy 属性を以下の値のいずれかに設定して指定できます。

  • snapshot が設定されている場合、デフォルトでスナップショットが使用されます。Containerized Data Importer (CDI) がストレージプロバイダーを認識し、プロバイダーが Container Storage Interface (CSI) スナップショットをサポートする場合、CDI はスナップショットメソッドを使用します。このクローン作成ストラテジーは、一時的なボリュームスナップショットを使用してボリュームのクローンを作成します。
  • copy は、ソース Pod とターゲット Pod を使用して、ソースボリュームからターゲットボリュームにデータをコピーします。ホスト支援型でのクローン作成は、最も効率的な方法です。
  • csi-clone は、CSI クローン API を使用して、中間ボリュームスナップショットを使用せずに、既存のボリュームのクローンを効率的に作成します。ストレージプロファイルが定義されていない場合にデフォルトで使用される snapshot または copy とは異なり、CSI ボリュームのクローンは、プロビジョナーのストレージクラスの StorageProfile オブジェクトに指定した場合にだけ使用されます。
注記

YAML spec セクションのデフォルトの claimPropertySets を変更せずに、CLI でクローン作成ストラテジーを設定できます。

ストレージプロファイルの例

apiVersion: cdi.kubevirt.io/v1beta1
kind: StorageProfile
metadata:
  name: <provisioner_class>
# ...
spec:
  claimPropertySets:
  - accessModes:
    - ReadWriteOnce 
1

    volumeMode:  Filesystem 
2

  cloneStrategy: csi-clone 
3

status:
  provisioner: <provisioner>
  storageClass: <provisioner_class>
Copy to Clipboard Toggle word wrap

1
accessModes を指定します。
2
volumeMode を指定します。
3
デフォルトの cloneStrategy を指定します。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat