pod配置中挂载部分
挂载有多种方式 本地、volume
https://kubernetes.io/zh/docs/concepts/storage/volumes/
卷
k8s卷具有明确的生命周期——与包裹它的Pod 相同。 因此,卷比 Pod 中运行的任何容器的存活期都长,在容器重新启动时数据也会得到保留。
卷的核心是包含一些数据的目录,Pod 中的容器可以访问该目录。 特定的卷类型可以决定这个目录如何形成的,并能决定它支持何种介质,以及目录中存放什么内容。
几种重要的Volume类型
emptyDir | 当 Pod 指定到某个节点上时,首先创建的是一个 emptyDir 卷,并且只要 Pod 在该节点上运行,卷就一直存在。 就像它的名称表示的那样,卷最初是空的。 尽管 Pod 中的容器挂载 emptyDir 卷的路径可能相同也可能不同,但是这些容器都可以读写 emptyDir 卷中相同的文件。 当 Pod 因为某些原因被从节点上删除时,emptyDir 卷中的数据也会永久删除。![]() |
---|---|
awsElasticBlockStore | EBS 卷的内容在删除 Pod 时会被保留,卷只是被卸载掉了。 这意味着 EBS 卷可以预先填充数据,并且可以在 Pod 之间传递数据。![]() |
azureDisk | azureDisk 用来在 Pod 上挂载 Microsoft Azure 数据盘 |
azureFile | azureFile 用来在 Pod 上挂载 Microsoft Azure 文件卷 |
cephfs | cephfs 允许您将现存的 CephFS 卷挂载到 Pod 中。不像 emptyDir 那样会在删除 Pod 的同时也会被删除,cephfs 卷的内容在删除 Pod 时会被保留,卷只是被卸载掉了。 这意味着 CephFS 卷可以被预先填充数据,并且这些数据可以在 Pod 之间”传递”。CephFS 卷可同时被多个写者挂载。 |
downwardAPI | 用于使 downward API 数据对应用程序可用。 这种卷类型挂载一个目录并在纯文本文件中写入请求的数据。 |
glusterfs | glusterfs 卷能将 Glusterfs (一个开源的网络文件系统) 挂载到您的 Pod 中。 不像 emptyDir 那样会在删除 Pod 的同时也会被删除,glusterfs 卷的内容在删除 Pod 时会被保存,卷只是被卸载掉了。 这意味着 glusterfs 卷可以被预先填充数据,并且这些数据可以在 Pod 之间”传递”。GlusterFS 可以被多个写者同时挂载。 https://github.com/kubernetes/examples/tree/master/volumes/glusterfs |
hostPath | 将主机节点文件系统上的文件或目录挂载到pod中![]() |
local | local 卷指的是所挂载的某个本地存储设备,例如磁盘、分区或者目录。 |