简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。
配置卷
贡献者
创建一个使用已配置的Kubernetes StorageClass来请求PV访问权限的永久性卷请求(PVC)。然后、您可以将PV挂载到POD。
概述
A "PersigentVolumeClaim" (PVC)是指请求访问集群上的永久卷。
可以将PVC配置为请求特定大小的存储或访问模式。通过使用关联的StorageClass,集群管理员可以控制不限于持续卷大小和访问模式(例如性能或服务级别)。
创建PVC后、您可以将卷挂载到Pod中。
创建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
-
将卷挂载到Pod中。
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。Pod应用程序将不再存在、但卷将保留。
kubectl delete pod pv-pod
示例清单
PersentVolumeClaim示例清单
这些示例显示了基本的PVC配置选项。
PVC、带读取器
此示例显示了一个具有读取权限的基本PVC,该PVC与名为的StorageClass关联 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 protection-gold
。
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pvc-san-nvme
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 300Mi
storageClassName: protection-gold
POD清单示例
这些示例显示了将PVC连接到POD的基本配置。
基本配置
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 对象"。