ボリュームをプロビジョニングする
設定したKubernetes StorageClassを使用してPVへのアクセスを要求するPersistentVolume(PV)とPersistentVolumeClaim(PVC)を作成します。その後、PVをポッドにマウントできます。
概要
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:
- ReadWriteOnce
hostPath:
path: "/my/host/path"
PersistentVolumeClaimサンプルマニフェスト
次の例は、という名前のStorageClassに関連付けられた、RWOアクセスが設定された基本的なPVCを示しています。 basic-csi。
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pvc-storage
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
storageClassName: basic-csi
ポッドマニフェストのサンプル
kind: Pod
apiVersion: v1
metadata:
name: pv-pod
spec:
volumes:
- name: pv-storage
persistentVolumeClaim:
claimName: basic
containers:
- name: pv-container
image: nginx
ports:
- containerPort: 80
name: "http-server"
volumeMounts:
- mountPath: "/my/mount/path"
name: pv-storage
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
-
ボリュームをポッドにマウントします。
kubectl create -f pv-pod.yaml
進捗状況は次を使用して監視できます。 kubectl get pod --watch。 -
ボリュームがマウントされていることを確認します。
/my/mount/path。kubectl exec -it task-pv-pod -- df -h /my/mount/path
-
ポッドを削除できるようになりました。Podアプリケーションは存在しなくなりますが、ボリュームは残ります。
kubectl delete pod task-pv-pod
を参照してください "Kubernetes オブジェクトと Trident オブジェクト" ストレージクラスとの連携の詳細については、を参照してください。 PersistentVolumeClaim とパラメータを使用して、Astra Tridentでボリュームをプロビジョニングする方法を制御します。