[minikube 文档中文翻译] 手册 - 离线使用
手册 - 持久卷
关于持久卷 (hostPath)
minikube 开箱即用地支持 hostPath
类型的 PersistentVolume - https://kubernetes.io/docs/concepts/storage/persistent-volumes/。这些 PersistentVolume 映射到正在运行的 minikube 实例(通常是 VM,除非您使用 --driver=none
、--driver=docker
或 --driver=podman
)内的目录。有关其工作原理的更多信息,请阅读下面的动态配置部分。
关于挂载、持久性和 minikube 主机的说明
minikube 配置为持久保存存储在以下目录下的文件,这些目录是在 Minikube VM 中创建的(如果在裸机上运行,则在您的本地主机上)。重新启动时,您可能会丢失其他目录中的数据。
/data*
/var/lib/minikube
/var/lib/docker
/var/lib/containerd
/var/lib/buildkit
/var/lib/containers
/tmp/hostpath_pv*
/tmp/hostpath-provisioner*
- 另一个目录的挂载点,存储在
/var
下或单独的数据磁盘
这是一个示例 PersistentVolume 配置,用于将数据保存在 /data
目录中:
1 | apiVersion: v1 |
您还可以通过在已安装的主机文件夹中创建 PV 来实现持久性。
动态配置和 CSI
此外,minikube 实现了一个非常简单、规范的动态存储控制器实现,它与它的部署一起运行。这管理 hostPath 卷的配置(而不是通过以前的 in-tree hostPath 提供程序)。
默认的 Storage Provisioner 控制器 - https://github.com/kubernetes/minikube/blob/master/pkg/storage/storage_provisioner.go在 minikube 代码库中进行内部管理,展示了将自定义存储控制器作为系统的存储组件插入 kubernetes 是多么容易,并动态地为 pod 提供,以测试你的 pod 在持久存储时的行为映射到它。
请注意,这不是基于 CSI 的存储提供程序,而是当控制器发现有未完成的存储请求时,它只是动态声明类型为 hostpath 的 PersistentVolume 对象。
原文链接
Persistent Volumes | minikube - https://minikube.sigs.k8s.io/docs/handbook/persistent_volumes/