ストレージクラスとPVCを設定する
Kubernetes StorageClassオブジェクトを設定してストレージクラスを作成し、Tridentでボリュームのプロビジョニング方法を指定します。設定したKubernetes StorageClassを使用してPVへのアクセスを要求するPersistentVolume(PV)とPersistentVolumeClaim(PVC)を作成します。その後、PVをポッドにマウントできます。
ストレージクラスを作成する。
Kubernetes StorageClassオブジェクトの設定
では、 "Kubernetes StorageClassオブジェクト"そのクラスで使用されるプロビジョニングツールとしてTridentが指定され、ボリュームのプロビジョニング方法がTridentに指示されます。例:
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: ontap-gold provisioner: csi.trident.netapp.io parameters: backendType: "ontap-nas" media: "ssd" provisioningType: "thin" snapshots: "true"
ストレージクラスとパラメータおよびパラメータとの連携によるTridentによるボリュームのプロビジョニング方法の詳細については PersistentVolumeClaim
、を参照してください"Kubernetes オブジェクトと Trident オブジェクト"。
ストレージクラスを作成する。
-
これはKubernetesオブジェクトなので、
kubectl
をクリックしてKubernetesで作成します。kubectl create -f storage-class-ontapnas.yaml
-
KubernetesとTridentの両方で「basic-csi」ストレージクラスが表示され、Tridentがバックエンドでプールを検出していることを確認します。
kubectl get sc basic-csi NAME PROVISIONER AGE basic-csi csi.trident.netapp.io 15h
PVおよびPVCの作成
A "永続ボリューム_" (PV)は、Kubernetesクラスタ上のクラスタ管理者がプロビジョニングする物理ストレージリソースです。。 "PersistentVolumeClaim_" (PVC)は、クラスタ上のPersistentVolumeへのアクセス要求です。
PVCは、特定のサイズまたはアクセスモードのストレージを要求するように設定できます。クラスタ管理者は、関連付けられているStorageClassを使用して、PersistentVolumeのサイズとアクセスモード(パフォーマンスやサービスレベルなど)以上を制御できます。
PVとPVCを作成したら、ポッドにボリュームをマウントできます。
マニフェストの例
PersistentVolumeサンプルマニフェスト
このサンプルマニフェストは、StorageClassに関連付けられた10Giの基本PVを示しています。 basic-csi
。
apiVersion: v1 kind: PersistentVolume metadata: name: pv-storage labels: type: local spec: storageClassName: basic-csi capacity: storage: 10Gi accessModes: - ReadWriteMany hostPath: path: "/my/host/path"
PersistentVolumeClaimサンプルマニフェスト
次に、基本的なPVC設定オプションの例を示します。
この例は、という名前のStorageClassに関連付けられたRWXアクセスを持つ基本的なPVCを示しています basic-csi
。
kind: PersistentVolumeClaim apiVersion: v1 metadata: name: pvc-storage spec: accessModes: - ReadWriteMany resources: requests: storage: 1Gi storageClassName: basic-csi
この例は、という名前のStorageClassに関連付けられたNVMe/TCPの基本的なPVCとRWOアクセスを示しています。 protection-gold
。
--- kind: PersistentVolumeClaim apiVersion: v1 metadata: name: pvc-san-nvme spec: accessModes: - ReadWriteOnce resources: requests: storage: 300Mi storageClassName: protection-gold
PVおよびPVCの作成
-
PVを作成します。
kubectl create -f pv.yaml
-
PVステータスを確認します。
kubectl get pv NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE pv-storage 4Gi RWO Retain Available 7s
-
PVC を作成します。
kubectl create -f pvc.yaml
-
PVCステータスを確認します。
kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE pvc-storage Bound pv-name 2Gi RWO 5m
ストレージクラスとパラメータおよびパラメータとの連携によるTridentによるボリュームのプロビジョニング方法の詳細については PersistentVolumeClaim
、を参照してください"Kubernetes オブジェクトと Trident オブジェクト"。
Trident属性
これらのパラメータは、特定のタイプのボリュームのプロビジョニングに使用する Trident で管理されているストレージプールを決定します。
属性 | を入力します | 値 | 提供 | リクエスト | でサポートされます |
---|---|---|---|---|---|
メディア ^1 |
文字列 |
HDD 、ハイブリッド、 SSD |
プールにはこのタイプのメディアが含まれています。ハイブリッドは両方を意味します |
メディアタイプが指定されました |
ONTAPNAS 、 ONTAPNAS エコノミー、 ONTAP-NAS-flexgroup 、 ONTAPSAN 、 solidfire-san-SAN 、 solidfire-san-SAN のいずれかに対応しています |
プロビジョニングタイプ |
文字列 |
シン、シック |
プールはこのプロビジョニング方法をサポートします |
プロビジョニング方法が指定されました |
シック:All ONTAP ;thin:All ONTAP & solidfire-san-SAN |
backendType |
文字列 |
ONTAPNAS、ONTAPNASエコノミー、ONTAP-NAS-flexgroup、ONTAPSAN、solidfire-san-SAN、solidfire-san-SAN、GCP-cvs、azure-NetApp-files、ONTAP-SAN-bエコノミー |
プールはこのタイプのバックエンドに属しています |
バックエンドが指定されて |
すべてのドライバ |
Snapshot |
ブール値 |
true false |
プールは、 Snapshot を含むボリュームをサポートします |
Snapshot が有効なボリューム |
ONTAP-NAS, ONTAP-SAN, solidfire-san-, gcvs |
クローン |
ブール値 |
true false |
プールはボリュームのクローニングをサポートします |
クローンが有効なボリューム |
ONTAP-NAS, ONTAP-SAN, solidfire-san-, gcvs |
暗号化 |
ブール値 |
true false |
プールでは暗号化されたボリュームをサポート |
暗号化が有効なボリューム |
ONTAP-NAS 、 ONTAP-NAS-エコノミー 、 ONTAP-NAS-FlexArray グループ、 ONTAP-SAN |
IOPS |
整数 |
正の整数 |
プールは、この範囲内で IOPS を保証する機能を備えています |
ボリュームで IOPS が保証されました |
solidfire - SAN |
^1 ^ : ONTAP Select システムではサポートされていません