考点精讲
- Kubernetes 存储体系分几个层次。最基础的是 Pod 内临时卷:EmptyDir 随 Pod 创建而生、随 Pod 删除而消失,适合容器间共享临时数据;hostPath 挂载宿主机目录,数据绑死在某个节点上,Pod 漂移后就读不到了。要实现持久化,需要 PV/PVC 这套解耦机制:PV(PersistentVolume)是集群级的存储资源(好比仓库里的货),PVC(PersistentVolumeClaim)是用户的存储申请(好比领料单),两者按容量和访问模式匹配后绑定。StorageClass 配合 provisioner 则实现 PV 的动态供给——PVC 一提交,系统自动创建 PV,无需管理员预先准备。理解「PV 是货、PVC 是领料单、StorageClass 是自动补货」就抓住了主线。
记忆技巧
PV 是仓库的货,PVC 是领料单
EmptyDir 随 Pod 生灭,hostPath 绑死在节点
EmptyDir 随 Pod 生灭,hostPath 绑死在节点
常见误区
- 以为 EmptyDir 能持久化数据
- PVC 找不到匹配 PV(容量/访问模式不匹配)而 Pending
- 动态供给忘配 StorageClass 默认值
真题思路
- 【示例】本页题目为教学模拟题,非真题,仅用于讲解答题思路 要实现「提交 PVC 后自动创建 PV」,应配置?
EmptyDir hostPath StorageClass 动态供给 ConfigMap
答案:C
解析:StorageClass 配合 provisioner 实现 PV 动态供给;EmptyDir/hostPath 是临时或节点本地卷,ConfigMap 存配置而非存储。
常见问题
Q:EmptyDir 能持久化数据吗
A:不能,它随 Pod 删除而消失,只用于临时数据。
Q:PVC 一直 Pending 怎么办
A:通常是没有匹配的 PV(容量或访问模式不符),或动态供给的 StorageClass 未配置。
Q:PV 和 PVC 什么关系
A:PV 是存储资源,PVC 是用户申请,二者匹配后绑定使用。
相关知识
教材出处:第11章 Kubernetes存储 Kubernetes存储(PV/PVC/StorageClass)