k8s的volumn解析

背景

k8s中有一套自己的存储逻辑,它和docker中的volumn类似,本文就来看一下k8s的volunm的存储设计

k8s的volumn

1.EmptyDir类型的volumn

这种类型的volumn是Pod内的容器共享的,volumn的生命周期和Pod的生命周期是一致的,不过大于Pod内某个容器的生命周期,也就是pod内的某个容器重启不影响这个volumn的销毁,因为Pod容器还在,k8s通过在宿主机目录/var/lib/kubelet/pods/podid/volumns/kubernetes.io~empty-dir目录下创建volumn名称的目录来实现pod内的容器共享这个volumn存储

2.HostDir类型的volumn

这种类型的volumn是把宿主机上的目录映射到pod内,pod内的容器可以直接访问宿主机的文件,即使pod被销毁了或者被迁移了,也不会影响宿主机上的文件,不过不同宿主机同一个目录下的文件有可能不一致,所以pod如果发生迁移,有可能也会在不同宿主机上有不同的行为,这种volumn的生命周期是独立于pod容器的

3.persistent volumn持久化卷

persistend volumn是通过使用k8s的特殊api创建的卷,这些卷对应的底层存储有可以是某个分布式文件系统的文件,然后不同的Pod容器可以自由使用这些Volumn了,这些Volumn的生命周期和pod的生命周期是完全独立的.

相关推荐
会飞的小蛮猪3 小时前
K8s-1.29.2二进制安装-第一章
云原生·容器·kubernetes
树下水月8 小时前
docker 启动后 如何通过对应的进程 找docker-compose.yaml 编排文件
运维·docker·容器
平行云8 小时前
实时云渲染支持在网页上运行UE5开发的3A大作Lyra项目
unity·云原生·ue5·webgl·虚拟现实·实时云渲染·像素流送
凯子坚持 c8 小时前
Docker 网络管理深度解析与实践指南
运维·docker·容器
kevin_水滴石穿8 小时前
在镜像生成时从内网获取字体安装包并配置
linux·docker·容器
阿里云云原生9 小时前
AI 原生落地成果获认可,阿里云云原生多项案例入选信通院「AI 云」典型示范
云原生
LILR_9 小时前
简单学docker
运维·docker·容器
阿里云云原生10 小时前
阿里云可观测 2025 年 11 月产品动态
阿里云·云原生·云计算·可观测
Empty_77710 小时前
K8S-网络原理
网络·容器·kubernetes
永不停歇的蜗牛10 小时前
K8S之创建cm指令create和 apply的区别
java·容器·kubernetes