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的生命周期是完全独立的.

相关推荐
川石课堂软件测试4 小时前
JMeter并发测试与多进程测试
功能测试·jmeter·docker·容器·kubernetes·单元测试·prometheus
吐个泡泡v5 小时前
Docker部署MySQL完整指南:从入门到实践
mysql·docker·容器·部署
GDAL6 小时前
Docker pull拉取镜像命令的入门教程
运维·docker·容器
cpsvps6 小时前
Docker存储卷备份策略于VPS服务器环境的实施标准与恢复测试
服务器·docker·容器
Britz_Kevin6 小时前
从零开始的云计算生活——激流勇进,kubernetes模块之Pod资源对象
kubernetes·云计算·生活·#pod
孫治AllenSun7 小时前
【Docker】安装kafka案例
docker·容器·kafka
江湖有缘16 小时前
【Docker项目实战】使用Docker部署todo任务管理器
docker·容器·eureka
MintonLee复现侠17 小时前
记录RK3588的docker中启动rviz2报错
docker·容器·ros·rk3588·rviz·rviz2
小白不想白a17 小时前
【k8s】k8s安装与集群部署脚本
云原生·容器·kubernetes
我来找弟弟17 小时前
open Euler--单master部署集群k8s
云原生·容器·kubernetes