1、解释什么是Kubernetes的Volume。
答:
Volume是K8s为容器提供的持久化存储卷。
可以实现数据持久化,删除容器后数据不会丢失、同一Pod中多个容器共享存储文件、脱离pod的生命周期,独立保存数据。
2、解释emptyDir卷类型的特征。
答:
emptyDir是Pod的临时存储卷,当Pod被分派到某个节点上、创建的同时,kubelet给分配的,自动在节点本地磁盘生成空白目录提供挂载。尽管pod中每个容器的用途不一样,它们的工作目录不同,但每个容器对文件系统的操作都会映射到一个相同的临时目录里。
Pod内所有容器都可挂载此目录,以此实现同Pod下多容器间的数据共享,本地磁盘存取也具备较快读写性能。
它的生命周期与Pod绑定,Pod重启时目录数据不会丢失;但如果Pod被删除了,emptyDir卷中的数据也会永久删除。无法跨Pod、跨节点留存数据,不具有持久化的能力。
因为它的创建无需额外配置、仅作临时存储,所以常用来放临时的数据。
3、解释hostPath卷类型的特征。
答:
hostPath卷能将pod中的目录挂载到主机节点的文件系统,数据直接存放在节点物理磁盘,可以实现容器数据的持久化。但更换节点后数据无法迁移,容器的迁移性受到了限制。生产上一般不用。
4、解释PV卷类型的特征。
答:
PV持久卷,是K8s集群中的存储,由管理员提前创建。属于顶级资源。生产最常用到。非命名空间资源
PV生命周期独立于Pod,不会因容器启停、Pod删除丢失数据,具有真正的数据持久化能力。
5、什么是PVC,如何使用它。
答:
PVC是存储申请卷,用户向集群申请存储空间的资源对象,属于命名空间级资源。不关心底层存储细节,只声明容量。
使用步骤:先创建PV,存入集群存储资源池,再编写PVC配置文件,声明存储容量,执行创建命令后集群自动匹配PV,状态变为Bound即绑定成功。
在Pod中挂载该PVC,容器即可读写持久化数据,业务结束删除PVC,根据PV回收策略处理存储数据。
6、PV有哪几种访问模式,详细说明。
答:
ReadWriteOnce:卷可以被一个节点以读写方式挂载。也允许运行在同一节点上的多个Pod访问卷。
ReadOnlyMany:卷可以被多个节点以只读方式挂载。
ReadWriteMany:卷可以被多个节点以读写方式挂载。
ReadWriteOncePod:卷可以被单个Pod以读写方式挂载。如果想确保整个集群中只有一个Pod可以读取或写入该PVC,就使用ReadWriteOncePod模式。
7、解释PV的回收策略。
答:
|
策略 |
行为 |
现状 |
|
Retain |
删除PVC后,PV依然存在,状态变为Released。数据保留,需要人工介入。 |
常用/推荐 |
|
Delete |
删除PVC后,云端存储(如AWS EBS/阿里云盘)会被自动删除。 |
动态供应默认值 |
|
Recycle |
删除PVC后,自动执行rm -rf清空数据,然后让PV重新可用。 |
已废弃 |

