k8s_使用k8s部署博客系统-PV PVC(二)
2024-08-24 06:32:22
PV和PVC
PV(PersistentVolume)在声明的时候需要指定大小和续写模式:["ReadWriteMany","ReadWriteOnce","ReadOnlyMany"],pv是集群声明的存储资源
实际资源部署请求的存储空间,称为PVC(PersistentVolumeClaim)。 pvc声明时也需要指定读写模式和大小。pvc关联某个pv后这个pv就不能再和别的pvc关联了。k8s会根据pvc的大小和读写模式在可用的PV中匹配一个最佳的pv与pvc关联。
PV的资源回收策略
与pv关联的pvc被删除时候如果pv的persistentVolumeRecliamPolicy:Retain 保留卷,需要手工清理。配置为Recycle 则删除数据。这些在pv的创建文件中进行定义
PV、PVC定义文件以及创建
wordpress和mysql PV的定义文件,此处只是进行PV定义,对应的路径可以不进行nfs配置,使用PVC部署pod之前需要将对应的路径配置完成nfs否则pod部署会报错。
#PV的定义文件
[root@k8s-01 ~]# cat pv_mysql_wordpress.yml
apiVersion: v1
kind: PersistentVolume
metadata:
name: mysql-pv
spec:
capacity:
storage: 3Gi
accessModes: ["ReadWriteOnce"]
persistentVolumeReclaimPolicy: Recycle
nfs:
path: /kube/mysql-db
server: k8s-01
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: wordpress-pv
spec:
capacity:
storage: 1Gi
accessModes: ["ReadWriteOnce","ReadWriteMany"]
persistentVolumeReclaimPolicy: Recycle
nfs:
path: /kube/wordpress
server: k8s-01
#创建PV和查询
[root@k8s-01 ~]# kubectl create -f pv_mysql_wordpress.yml
#查询PV
[root@k8s-01 ~]# kubectl get pv -o wide
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE VOLUMEMODE
mysql-pv 3Gi RWO Recycle Bound default/mysql-pv-claim 50d Filesystem
wordpress-pv 1Gi RWO,RWX Recycle Bound default/wordpress-pv-claim 50d Filesystem
PVC定义文件以及创建操作
#mysql和wordpress pvc定义文件
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mysql-pv-claim
spec:
accessModes: ["ReadWriteOnce"]
resources:
requests:
storage: 2Gi
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: wordpress-pv-claim
spec:
accessModes: ["ReadWriteOnce","ReadWriteMany"]
resources:
requests:
storage: 1Gi #创建PVC
kubectl create -f pvc_mysql_wd.yml #查询创建的PVC,这里能看到PVC根据大小和读写策略自动匹配到合适的PV
[root@k8s-01 ~]# kubectl get pvc -o wide
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE VOLUMEMODE
mysql-pv-claim Bound mysql-pv 3Gi RWO 50d Filesystem
wordpress-pv-claim Bound wordpress-pv 1Gi RWO,RWX 50d Filesystem
最新文章
- 19.Java 注解
- JAVA NIO——Buffer和FileChannel
- C++学习之重载、覆盖与隐藏
- Sublime Text3 支持Less
- HTML5 学习笔记--------》HTML5概要与新增标签!
- lua进阶(二)
- 【HDOJ】4504 威威猫系列故事——篮球梦
- Windows cmd
- 编译C语言单元测试框架CUnit库的方法
- vue中v-text / v-html
- 微信小程序Dom事件实现
- Codeforces 954 G. Castle Defense
- C# windows服务:创建Windows服务(Windows Services)的一般步骤
- txt写入时报错出现:正由另一进程使用,原来是多此一举的操作
- SqlHelper DBHelper
- linux下 php 安装mysql的扩展模块
- python matplotlib.pyplot画矩形图 以及plt.gca()
- MVC 5 视图之公用代码
- Go基础---->;go的基础学习(四)
- java规范之checkstyle