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
 

k8s_使用k8s部署博客系统-PV PVC(二)的更多相关文章

  1. 8.3 k8s部署jenkins,通过pv/pvc结合NFS服务器持久化

    1.制作jenkins docker镜像 1.1 下载jenkins wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/2.30 ...

  2. 【云原生 · Kubernetes】部署博客系统

    [云原生 · Kubernetes]Kubernetes运维 接着上次的内容,后续来了! (1)配置NFS服务 master节点安装NFS与RPC服务: # yum install -y nfs-ut ...

  3. ThinkPHP开发博客系统笔记之二

    1. 登陆验证码 当用户登陆的时候我们希望也弹出验证码,有两种方法可以实现:一是再增加一个弹出验证码的dialog,二是和注册共用一个验证码dialog.第一种方法有大量重复代码,所以我们使用第二种方 ...

  4. 使用docker部署WordPress博客系统(win10企业版)

    docker介绍: docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相 ...

  5. 如何快速部署国人开源的 Java 博客系统 Tale

    除了闷头专研技术之外,程序员还需要不断地写作进行技术积累,写博客是其中最重要的方式之一.商业博客平台不少,但是更符合程序员背景的方案,是自己开发一个博客平台或者使用开源的博客平台. 开源的博客平台多如 ...

  6. linux下部署tomcat 上线jpress博客系统

    tomcat Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器. tomcat有三个端口 开始部署 安装tomcat 第一步:下载tomcat 安装包 tomcat官网 ...

  7. 在github Pages上部署octopress搭建个人博客系统

    原文链接:http://caiqinghua.github.io/blog/2013/08/26/deploy-octopress-to-github-pages/ 引子 上一篇博客已经说了为什么要搭 ...

  8. Docker 方式部署 Solo 博客系统总结

      此篇为Docker部署方式,另有Tomcat部署方式,请参考文章<Tomcat 方式部署 Solo 博客系统总结>   最近搭建了一个博客系统,作为自己的主页,方便记录一些平时所见所闻 ...

  9. Tomcat 方式部署 Solo 博客系统总结

      此篇为Tomcat部署方式,另有Docker部署方式,请参考文章<Docker 方式部署 Solo 博客系统总结> 一.环境和文件准备 服务器:购买的阿里云服务器,系统为Linux(C ...

  10. Centos 7使用docker部署LAMP搭建wordpress博客系统

    0.简要概述 LAMP是目前比较流行的web框架,即Linux+Apache+Mysql+PHP的网站架构方案.docker是目前非常流行的虚拟化应用容器,可以为任何应用创建一个轻量级.可移植的容器. ...

随机推荐

  1. 【故障公告】Kubernetes 集群节点宕机造成博客站点故障

    非常抱歉!今天 18:40-18:55 左右 Kubernetes 集群一台高配节点突然宕机,造成博客站点故障,访问时出现 502 Bad Gateway,由此给您带来麻烦麻烦,请您谅解. 发现故障并 ...

  2. python collection Chainmap Counter

    chainmap是一个方便的工具类.它是使用链的方式将多个dict链在一起, 并不是真正的生成一个新的dict,从而允许程序可以这获取任意一个dict 所包含的所有key对应的value. 但是由于式 ...

  3. spring boot 3.x 配置spring security

    参考文章:https://spring.io/guides/gs/securing-web/ 导入maven <dependency> <groupId>org.springf ...

  4. 6. Texture

    Texture 作用:可以将默认的贴图转换为自己想要的贴图类型. Texture Type: 贴图类型 Default: 默认的 Normal map: 法线贴图 Editor GUI and Leg ...

  5. 马哥教育第一周作业N67044-张铭扬

    1. 图文并茂解释开源许可证 GPL.BSD.MIT.Mozilla.Apache和LGPL的区别? 1)MIT许可证:MIT是六种开源许可证中最自由宽容,它允许使用者自由修改后无需放置版权说明并且可 ...

  6. 360 quake 网络空间测绘引擎真的很不错

    最近通过使用360 quake搜索引擎,发现真的能够比较准确的找到数据,对比fofa,shodan这种免费用户使用体验真的很好,搜到的数据很是全面,但是搜索的资产是国内的ip时会做脱敏处理.有时间大家 ...

  7. CLIP 读书笔记

    论文:Learning Transferable Visual Models From Natural Language Supervision CLIP: Contrastive Language- ...

  8. 30分钟熟练使用最常用的ES6,还不学是等着被卷死?

    一. 关于ES6 了解一门技术或者语言,最好的方法就是知道它能做些什么 ES6 , 它是由 ECMA 国际标准化组织,制定的一项脚本语言的标准化规范 那么它为什么会出现呢? 每一次标准的诞生都意味着语 ...

  9. sqlite 数据更新

    1.整个库迁移(命令) https://blog.csdn.net/kevin_weijc/article/details/78920593 2.单个表数据导入(attach,在数据库中添加附加数据库 ...

  10. 导出PDF 空白赋值备份

    后台代码 //出货清单 @RequestMapping(params="getBusinessOutDetail") public void getBusinessOutDetai ...