PersistentVolume(PV):集群内的存储资源。例如,节点是集群的资源。PV 独立于 Pod 的生命周期,根据不同的 StorageClass 类型创建不同类型的 PV。
PersistentVolumeClaim(PVC):集群内的存储请求。例如,PV 是 Pod 使用节点资源,PVC 则声明使用 PV 资源。当 PV 资源不足时,PVC 也可以动态创建 PV。
静态创建 PV 适用于已有存量云盘,并在集群内使用的场景。
登录容器服务控制台,选择左侧导航栏中的【集群】。
选择需创建 PVC 的集群 ID,进入待创建 PVC 的集群管理页面。
选择【存储】>【PersistentVolumeClaim】,进入 PersistentVolumeClaim 信息页面。
单击【新建】,进入 “新建PersistentVolumeClaim” 页面。
根据实际需求,设置 PVC 参数。关键参数信息如下:
单击【创建PersistentVolumeClaim】,完成创建。
若已有 PV 不足,系统将自动创建新的 PV。
使用 PVC 挂载模式,数据卷只能挂载到一台 node 主机上
当前仅支持 CBS 及 CFS 类型的 PV 及 PVC。如选择 CBS 类型的 PV 及 PVC,您可通过 StorageClass 管理 指定 PV 绑定的云盘的类型。以下仅提供示例文件,您可直接通过 Kubectl 进行创建操作。
通过已有 CBS 创建 PV。若未创建 PV,在 创建 PVC 时,系统将自动创建对应的 PV。
apiVersion: v1
kind: PersistentVolume
metadata:
name: nginx-pv
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
qcloudCbs:
cbsDiskId: disk-xxxxxxx ## 指定已有的CBS id
fsType: ext4
storageClassName: cbs
若未 创建 PV,在创建 PVC 时,系统将自动创建对应的 PV。YAML 示例如下:
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: nginx-pv-claim
spec:
storageClassName: cbs
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
YAML 示例如下:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: nginx-deployment
spec:
replicas: 1
selector:
matchLabels:
qcloud-app: nginx-deployment
template:
metadata:
labels:
qcloud-app: nginx-deployment
spec:
containers:
- image: nginx
imagePullPolicy: Always
name: nginx
volumeMounts:
- mountPath: "/opt/"
name: pvc-test
volumes:
- name: pvc-test
persistentVolumeClaim:
claimName: nginx-pv-claim # 已经创建好的 PVC
本页内容是否解决了您的问题?