本产品推出了新版本。
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。
配置卷
创建一个使用已配置的Kubernetes StorageClass来请求对PV的访问的永久性卷(PV)和永久性卷克莱姆(PVC)。然后、您可以将PV挂载到POD。
概述
答 "PersigentVolume" (PV)是由集群管理员在Kubbernetes集群上配置的物理存储资源。。 "PersigentVolumeClaim" (PVC)是对集群上的永久卷的访问请求。
可以将PVC配置为请求特定大小的存储或访问模式。通过使用关联的StorageClass,集群管理员可以控制不限于持续卷大小和访问模式(例如性能或服务级别)。
创建PV和PVC后、您可以将卷挂载到Pod中。
示例清单
PerfsentVolume示例清单
此示例清单显示了与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"
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: 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
基本NVMe/TCP配置
---
apiVersion: v1
kind: Pod
metadata:
creationTimestamp: null
labels:
run: nginx
name: nginx
spec:
containers:
- image: nginx
name: nginx
resources: {}
volumeMounts:
- mountPath: "/usr/share/nginx/html"
name: task-pv-storage
dnsPolicy: ClusterFirst
restartPolicy: Always
volumes:
- name: task-pv-storage
persistentVolumeClaim:
claimName: pvc-san-nvme
创建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
-
将卷挂载到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 task-pv-pod
请参见 "Kubernetes 和 Trident 对象" 有关存储类如何与交互的详细信息 PersistentVolumeClaim 和用于控制Asta Trident配置卷的方式的参数。