在前面我们介绍了存储卷,在kubernetes中,在存储卷上面,我们还有一个持久卷(PV)和(PVC)的抽象,日常使用pod挂载存储的时候,我峨嵋你主要是挂载pvc。所以本文我们介绍下这几个概念,并且演示下pod如何挂载pvc。
PV
pv全称为Persistent Volume。也称为持久卷。他是抽象于整个kubernetes集群级别的存储资源。下面我们演示一下,创建一个pv。这里还是使用yaml配置文件来演示,整个pv的yaml内容如下:
apiVersion: v1 #kubernetes核心版本 kind: PersistentVolume #类型是PV metadata: name: pv-test1 #名称 spec: capacity: storage: 5Gi #存储容量 accessModes: - ReadWriteOnce #pv访问策略 persistentVolumeReclaimPolicy: Retain #回收后保留 nfs: server: 192.168.31.10 #nfs地址 path: /mnt/data #nfs路径
创建完成之后,我们就可以看到对应的pv了。
PVC
pvc全程Persistent Volume Caim,也成为持久卷声明,我把它看作是一个在pv上的一个抽象,她可以规定我想要使用哪个存储,并且使用多少空间。下面我们来演示下创建pvc的案例,还是使用yaml文件进行创建,示例如下:
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: pvc-test #pvc名称 spec: accessModes: - ReadWriteOnce #访问模式 resources: requests: storage: 5Gi #本次使用的存储空间 volumeName: pv-test1 #使用的pv
pod挂载
接着我们pod就可以挂载这个pvc了,pod挂载的案例yaml内容如下:
apiVersion: v1 kind: Pod metadata: name: nginx spec: containers: - name: nginx image: nginx volumeMounts: - name: nginx-storage mountPath: /var/www/html volumes: - name: nginx-storage persistentVolumeClaim: claimName: pvc-test #刚才创建的pvc名称
这里主要的核心是volumes这一部分
此时我们的pod就会正常运行,比关切使用这里的pvc了。
以上就是对应的pv,pvc,pod挂载的案例。
还没有评论,来说两句吧...