Kubernetes 存储管理
1.概述
Kubernetes Volume 是 Pod 级别声明的、可被同一 Pod 内多个容器挂载共享的存储抽象,用来在容器重启时保留数据、并解耦应用与底层具体存储实现。
2. 本地/临时型(Pod 删除即情况)
2.1 hostPath
hostPath 卷将主机节点的文件系统中文件或目录挂载到集群中
2.1.1 资源定义


2.1.2 在对应节点的对应目录添加静态文件,验证


2.2 emptyDir
Pod 创建时分配空目录。正如卷的名字所述,它最初是空的。Pod中的容器可以读取和写入 emptyDir 卷中的相同文件,尽管该卷可以挂载在每个容器中的相同或者不同路径上。当出于任何原因从节点删除Pod时,emptyDir 将被永久删除。
2.2.1 资源定义


2.2.2 验证文件共享

3. 网络/持久化型(数据跨 Pod 生命周期)
3.1 NFS
NFS 卷能将NFS(网络文件系统)挂载到 Pod 中,NFS 卷的内容在删除 Pod 时会被保存,卷只是被卸载。NFS 卷可以被预先填充数据,并且这些数据可以在 Pod 之间共享。
3.1.1 在 NFS 文件系统下创建目录和文件

3.1.2 资源定义



3.1.3 验证文件共享

3.2 PersistentVolume(PV)
PV 是由管理员设置的存储,它是群集的一部分。就像节点是集群中的资源一样,PV 也是集群中的资源。PV 是 Volume 之类的卷插件,但具有独立于使用 PV 的 Pod 的生命周期。此 API 对象包含存储实现的细节,即 NFS、iSCSI 或特定于云供应商的存储系统。




3.3 PVC
PVC 是用户存储的请求。它与 Pod 相似。Pod 消耗节点资源,PVC 消耗 PV 资源。Pod 可以请求特定级别的资源(CPU 和内存)。声明可以请求特定的大小和访问模式(例如,可以以读/写一次或只读多次模式挂载)。
3.3.1 PVC 配置定义







3.3.2 验证访问静态页面



3.4 动态制备 PV
3.4.1 StorageClass
在创建静态 PV 中,storageClassName可以随便起名,只要 PV 和 PVC 一致,不需要创建,类似于标签功能。
在动态PV中,需要手动创建。
3.4.2 配置文件定义 nfs provisioner deployment





3.4.3 验证 PVC 绑定动态 PV





- 点赞
- 收藏
- 关注作者
评论(0)