第10章 インストール後のストレージ設定
OpenShift Container Platform のインストール後に、ストレージの設定を含め、クラスターをさらに拡張し、要件に合わせてカスタマイズできます。
デフォルトでは、コンテナーは一時ストレージまたは一時的なローカルストレージを使用して動作します。一時ストレージには有効期間の制限があります。データを長期間保存するには、永続ストレージを設定する必要があります。以下の方法のいずれかを使用してストレージを設定できます。
- 動的プロビジョニング
- ストレージアクセスを含む異なるレベルのストレージを制御するストレージクラスを定義して作成することで、オンデマンドでストレージを動的にプロビジョニングできます。
- 静的プロビジョニング
- Kubernetes 永続ボリュームを使用して、既存のストレージをクラスターで利用できるようにすることができます。静的プロビジョニングは、さまざまなデバイス設定とマウントオプションをサポートできます。
10.1. 動的プロビジョニング
動的プロビジョニングにより、ストレージボリュームをオンデマンドで作成し、クラスター管理者がストレージを事前にプロビジョニングする必要をなくすことができます。動的プロビジョニング を参照してください。
10.1.1. Red Hat Virtualization (RHV) オブジェクト定義
OpenShift Container Platform は、動的にプロビジョニングされる永続ボリュームを作成するために使用される ovirt-csi-sc
という名前のタイプが StorageClass
のデフォルトオブジェクトを作成します。
異なる設定の追加ストレージクラスを作成するには、以下のサンプル YAML で記述される StorageClass
オブジェクトを使用してファイルを作成し、保存します。
ovirt-storageclass.yaml
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: <storage_class_name> 1 annotations: storageclass.kubernetes.io/is-default-class: "<boolean>" 2 provisioner: csi.ovirt.org allowVolumeExpansion: <boolean> 3 reclaimPolicy: Delete 4 volumeBindingMode: Immediate 5 parameters: storageDomainName: <rhv-storage-domain-name> 6 thinProvisioning: "<boolean>" 7 csi.storage.k8s.io/fstype: <file_system_type> 8
- 1
- ストレージクラス名
- 2
- ストレージクラスがクラスターのデフォルトストレージクラスの場合に
false
に設定されます。true
に設定される場合、既存のデフォルトストレージクラスを編集し、false
に設定する必要があります。 - 3
true
は動的ボリューム拡張を有効にし、false
はこれを防ぎます。true
が推奨されます。- 4
- このストレージクラスの動的にプロビジョニングされる永続ボリュームは、この回収ポリシーで作成されます。このデフォルトポリシーは
Delete
です。 - 5
PersistentVolumeClaims
をプロビジョニングし、バインドする方法を示します。設定されていない場合は、VolumeBindingImmediate
が使用されます。このフィールドは、VolumeScheduling
機能を有効にするサーバーによってのみ適用されます。- 6
- 使用する RHV ストレージドメイン名。
- 7
true
の場合、ディスクはシンプロビジョニングされます。false
の場合、ディスクは事前割り当てされます。シンプロビジョニングが推奨されています。- 8
- オプション: 作成するファイルシステムタイプ。使用できる値は
ext4
(デフォルト) またはxfs
です。