日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。
ボリュームをプロビジョニングする
設定したKubernetes StorageClassを使用してPVへのアクセスを要求するPersistentVolumeClaim(PVC)を作成します。その後、PVをポッドにマウントできます。
概要
https://kubernetes.io/docs/concepts/storage/persistent-volumes["PersistentVolumeClaim_"^](PVC)は、クラスタ上のPersistentVolumeへのアクセス要求です。
PVCは、特定のサイズまたはアクセスモードのストレージを要求するように設定できます。クラスタ管理者は、関連付けられているStorageClassを使用して、PersistentVolumeのサイズとアクセスモード(パフォーマンスやサービスレベルなど)以上を制御できます。
PVCを作成したら、ボリュームをポッドにマウントできます。
PVCの作成
手順
-
PVC を作成します。
kubectl create -f pvc.yaml
-
PVCステータスを確認します。
kubectl get pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE pvc-storage Bound pv-name 1Gi 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 pv-pod
マニフェストの例
PersistentVolumeClaimサンプルマニフェスト
次に、基本的なPVC設定オプションの例を示します。
RWOアクセスを備えたPVC
次の例は、という名前のStorageClassに関連付けられた、RWOアクセスが設定された基本的なPVCを示しています。 basic-csi
。
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pvc-storage
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
storageClassName: basic-csi
NVMe / TCP対応PVC
この例は、という名前の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
PODマニフェストのサンプル
次の例は、PVCをポッドに接続するための基本的な設定を示しています。
キホンセツテイ
kind: Pod
apiVersion: v1
metadata:
name: pv-pod
spec:
volumes:
- name: storage
persistentVolumeClaim:
claimName: pvc-storage
containers:
- name: pv-container
image: nginx
ports:
- containerPort: 80
name: "http-server"
volumeMounts:
- mountPath: "/my/mount/path"
name: storage
NVMe/TCPの基本構成
apiVersion: v1
kind: Pod
metadata:
name: pod-nginx
spec:
volumes:
- name: basic-pvc
persistentVolumeClaim:
claimName: pvc-san-nvme
containers:
- name: task-pv-container
image: nginx
volumeMounts:
- mountPath: "/my/mount/path"
name: basic-pvc
ストレージクラスとパラメータおよびパラメータとの連携によるTridentによるボリュームのプロビジョニング方法の詳細については PersistentVolumeClaim
、を参照してください"Kubernetes オブジェクトと Trident オブジェクト"。