ストレージクラスとPVCを構成する
Kubernetes StorageClass オブジェクトを構成し、ボリュームのプロビジョニング方法をTrident に指示するストレージ クラスを作成します。構成された Kubernetes StorageClass を使用して PV へのアクセスを要求する PersistentVolumeClaim (PVC) を作成します。その後、PV をポッドにマウントできます。
ストレージクラスを作成する
Kubernetes StorageClassオブジェクトを構成する
その "Kubernetes StorageClassオブジェクト"オブジェクトは、そのクラスに使用されるプロビジョナーとしてTrident を識別し、ボリュームをプロビジョニングする方法をTridentに指示します。NFS を使用するボリュームの Storageclass を設定するには、この例を使用します (属性の完全なリストについては、以下のTrident属性セクションを参照してください)。
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ontap-gold
provisioner: csi.trident.netapp.io
parameters:
backendType: "ontap-nas"
provisioningType: "thin"
snapshots: "true"
iSCSI を使用するボリュームの Storageclass を設定するには、次の例を使用します。
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ontap-gold
provisioner: csi.trident.netapp.io
parameters:
backendType: "ontap-san"
provisioningType: "thin"
snapshots: "true"
AWS BottlerocketでNFSv3ボリュームをプロビジョニングするには、必要な `mountOptions`ストレージクラスに:
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"
mountOptions:
- nfsvers=3
- nolock
参照"KubernetesとTridentオブジェクト"ストレージクラスがどのように相互作用するかの詳細については、 PersistentVolumeClaim Trident がボリュームをプロビジョニングする方法を制御するためのパラメータ。
ストレージクラスを作成する
-
これはKubernetesオブジェクトなので、
kubectlKubernetes で作成します。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
PVCを作成する
あ "永続ボリュームクレーム"(PVC) は、クラスター上の PersistentVolume へのアクセス要求です。
PVC は、特定のサイズまたはアクセス モードのストレージを要求するように構成できます。関連付けられた StorageClass を使用すると、クラスター管理者は PersistentVolume のサイズやアクセス モードだけでなく、パフォーマンスやサービス レベルなどの制御も行えます。
PVC を作成したら、ボリュームをポッドにマウントできます。
サンプルマニフェスト
PersistentVolumeClaim サンプルマニフェスト
これらの例は、基本的な PVC 構成オプションを示しています。
この例では、RWXアクセスを持つ基本的なPVCが、StorageClassに関連付けられています。 basic-csi 。
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pvc-storage
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi
storageClassName: ontap-gold
この例では、RWOアクセスを持つiSCSI用の基本PVCが、StorageClassに関連付けられています。 protection-gold 。
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pvc-san
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
storageClassName: protection-gold
PVCを作成する
-
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
参照"KubernetesとTridentオブジェクト"ストレージクラスがどのように相互作用するかの詳細については、 PersistentVolumeClaim Trident がボリュームをプロビジョニングする方法を制御するためのパラメータ。
Tridentの属性
これらのパラメータは、特定のタイプのボリュームをプロビジョニングするためにどの Trident 管理ストレージ プールを使用するかを決定します。
| 属性 | タイプ | 値 | オファー | 要求 | 支援 |
|---|---|---|---|---|---|
メディア1 |
string |
HDD、ハイブリッド、SSD |
プールにはこのタイプのメディアが含まれます。ハイブリッドとは両方を意味します。 |
指定されたメディアタイプ |
ontap-nas、ontap-nas-economy、ontap-nas-flexgroup、ontap-san、solidfire-san |
プロビジョニングタイプ |
string |
薄い、厚い |
プールはこのプロビジョニング方法をサポートしています |
指定されたプロビジョニング方法 |
厚い:すべてオンタップ、薄い:すべてオンタップとsolidfireさん |
バックエンドタイプ |
string |
ontap-nas、ontap-nas-economy、ontap-nas-flexgroup、ontap-san、solidfire-san、gcp-cvs、azure-netapp-files、ontap-san-economy |
プールはこのタイプのバックエンドに属します |
バックエンドが指定されました |
すべてのドライバー |
Snapshot |
ブール |
真、偽 |
プールはスナップショット付きのボリュームをサポートします |
スナップショットが有効になっているボリューム |
ontap-nas、ontap-san、solidfire-san、gcp-cvs |
クローン |
ブール |
真、偽 |
プールはボリュームのクローン作成をサポート |
クローンが有効なボリューム |
ontap-nas、ontap-san、solidfire-san、gcp-cvs |
暗号化 |
ブール |
真、偽 |
プールは暗号化されたボリュームをサポートします |
暗号化が有効になっているボリューム |
ontap-nas、ontap-nas-economy、ontap-nas-flexgroups、ontap-san |
IOPS |
整数 |
正の整数 |
プールはこの範囲のIOPSを保証できる |
ボリュームはこれらのIOPSを保証 |
solidfireさん |
1: ONTAP Selectシステムではサポートされていません