当前位置: 首页 > news >正文

k8s数据卷(volume)管理

volume数据卷管理

一、volume介绍
用于实现数据的持久化存储
Kubernetes支持多种类型的卷,例如EmptyDir、HostPath、nfs、glusterfs、ceph等

二、emptyDir
创建Pod时,Pod运行的node节点会创建临时卷,并将卷挂载到Pod指定的目录中
临时卷存放目录
/var/lib/kubelet/pods//volumes/kubernetes.io~empty-dir/卷名称
Pod宕机销毁后,该临时卷中的数据会随之被删除


apiVersion: apps/v1
kind: Deployment
metadata:name: test1-deploy
spec:replicas: 2selector:matchLabels:app: test1-podtemplate:metadata:labels:app: test1-podspec:containers:- name: test1-podimage: busyboximagePullPolicy: IfNotPresentcommand:- sleep- "3600"volumeMounts:- name: test1-volumemountPath: /test1volumes:- name: test1-volumeemptyDir: {}

三、hostPath
创建Pod时,Pod运行的node节点会在本地创建目录,并该目录挂载到Pod中
Pod宕机后,宿主机对应目录中的文件不会消失


apiVersion: apps/v1
kind: Deployment
metadata:name: test2-deploylabels:app: test2-deploy
spec:replicas: 2selector:matchLabels:app: test2-podtemplate:metadata:labels:app: test2-podspec:containers:- name: test2-podimage: busyboximagePullPolicy: IfNotPresentcommand:- sleep- "3600"volumeMounts:- name: test2-volumemountPath: /test1volumes:- name: test2-volumehostPath:path: /data

四、基于nfs的网络卷


apiVersion: apps/v1
kind: Deployment
metadata:name: test3-deploylabels:app: test3-deploy
spec:replicas: 2selector:matchLabels:app: test3-podtemplate:metadata:labels:app: test3-podspec:containers:- name: test3-podimage: busyboximagePullPolicy: IfNotPresentcommand:- sleep- "3600"volumeMounts:- name: test3-volumemountPath: /test1volumes:- name: test3-volumenfs:server: "192.168.140.11"path: "/data"

五、PV与PVC 持久卷

1、PV、PVC介绍
PV PersistentVolume
后端真实存储空间的映射

PVC PersistentVolumeClain
使用存储空间的申请

使用流程
创建PV标识真实的存储空间
创建PVC发送申请存储空间的请求,K8S集群会自动在PV、PVC间建立映射关系
建立映射关系:
依靠存储空间的大小
依靠PV的访问模式
创建POD时绑定PVC,实现持久化


1、创建PV
apiVersion: v1
kind: PersistentVolume
metadata:name: nfs-data1
spec:capacity:storage: 2GaccessModes:- ReadWriteManypersistentVolumeReclaimPolicy: Recyclenfs:server: 192.168.140.13path: /data1

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 深度学习 - 数据存储形式对比(pkl/CSV/JSON等)
  • 设计模式的概念
  • qt-声明、宏
  • 【深度学习】【语音】TTS,Matcha-TTS,测试效果,训练中文,chinese
  • YOLOv8添加MobileViTv3模块(代码+free)
  • 指针基础知识(笔记)
  • 用uniapp 及socket.io做一个简单聊天app 踢人拉黑 7
  • 2024年计算机类学术会议有哪些
  • 什么是oled?
  • 初识增强现实(AR)
  • ubuntu20从docker安装到制作自己的镜像使用记录
  • leetcode数论(2521. 数组乘积中的不同质因数数目)-质因素分解
  • 垃圾收集器
  • 【Linux】(32)详解命名管道 | 日志管理 | 进程池2.0
  • 基于python的百度迁徙迁入、迁出数据分析(七)
  • [数据结构]链表的实现在PHP中
  • 《微软的软件测试之道》成书始末、出版宣告、补充致谢名单及相关信息
  • 【编码】-360实习笔试编程题(二)-2016.03.29
  • 2018一半小结一波
  • es6(二):字符串的扩展
  • FastReport在线报表设计器工作原理
  • go append函数以及写入
  • Javascript Math对象和Date对象常用方法详解
  • JavaScript新鲜事·第5期
  • java中的hashCode
  • NSTimer学习笔记
  • PermissionScope Swift4 兼容问题
  • vue:响应原理
  • 创建一个Struts2项目maven 方式
  • 关于使用markdown的方法(引自CSDN教程)
  • 推荐一个React的管理后台框架
  • 为视图添加丝滑的水波纹
  • 原生js练习题---第五课
  • 宾利慕尚创始人典藏版国内首秀,2025年前实现全系车型电动化 | 2019上海车展 ...
  • 支付宝花15年解决的这个问题,顶得上做出十个支付宝 ...
  • (20)docke容器
  • (24)(24.1) FPV和仿真的机载OSD(三)
  • (Repost) Getting Genode with TrustZone on the i.MX
  • (转)视频码率,帧率和分辨率的联系与区别
  • (自用)gtest单元测试
  • .apk文件,IIS不支持下载解决
  • .bat批处理(十):从路径字符串中截取盘符、文件名、后缀名等信息
  • .NET 项目中发送电子邮件异步处理和错误机制的解决方案
  • .net 验证控件和javaScript的冲突问题
  • .NetCore实践篇:分布式监控Zipkin持久化之殇
  • .NET国产化改造探索(三)、银河麒麟安装.NET 8环境
  • .NET框架
  • .NET设计模式(2):单件模式(Singleton Pattern)
  • .NET之C#编程:懒汉模式的终结,单例模式的正确打开方式
  • .Net转Java自学之路—SpringMVC框架篇六(异常处理)
  • @Autowired 和 @Resource 区别的补充说明与示例
  • @Transient注解
  • [ C++ ] STL priority_queue(优先级队列)使用及其底层模拟实现,容器适配器,deque(双端队列)原理了解
  • [ Linux 长征路第五篇 ] make/Makefile Linux项目自动化创建工具
  • [2016.7 Day.4] T1 游戏 [正解:二分图 偏解:奇葩贪心+模拟?(不知如何称呼不过居然比std还快)]