永続性を必要とするワークロードの場合は、デフォルトのストレージ クラスを使用するか、パーシステント ボリュームで使用する独自のストレージ クラスを定義します。Tanzu Kubernetes クラスタは、コンテナ ストレージ インターフェイス (CSI) のプロビジョナをサポートしています。

コンテナ ストレージ インターフェイス (CSI) はサポート対象

Tanzu Kubernetes クラスタは、コンテナ ストレージ インターフェイス (CSI) をサポートしています。StorageClass の定義では、このタイプのプロビジョナは csi.vsphere.vware.com と識別されます。

次の YAML 定義をテンプレートとして使用して、 Tanzu Kubernetes クラスタのストレージ クラスを定義できます。ストレージ クラスをデフォルト(「true」)にするかどうかを指定し、ストレージ環境のデータストア URL を指定します。
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: tkgs-storage-class
  annotations:
    storageclass.kubernetes.io/is-default-class: "true" or "false"
provisioner: csi.vsphere.vmware.com
parameters:
  datastoreurl: "ds:///vmfs/volumes/vsan:52d8eb4842dbf493-41523be9cd4ff7b7/"
次のストレージ クラスを作成します。
kubectl apply -f tkgs-storage-class.yaml

storageclass.storage.k8s.io/tkgs-storage-class created
ストレージ クラスが作成されたことを確認します。
kubectl get storageclass
または、次のショートカットを使用します。
kubectl get sc

VMware Cloud Provider (vCP) は非サポート対象

Tanzu Kubernetes クラスタは、次に示すようにレガシー VMware Cloud Provider (vCP) StorageClass をサポートしていません。vCP プロビジョナを使用して StorageClass を作成しようとしても、 StorageClass は作成されません。
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: demo-sts-sc
provisioner: kubernetes.io/vsphere-volume
parameters:
  diskformat: thin