有没有办法配置 k8s,以便工作节点上的预定义主机路径仅适用于属于特定命名空间的 pod,而其他命名空间中的其他 pod 无法挂载它。
1 回答
0
没有这种可能性。这与卷的性质有关。更加具体:
Kubernetes 卷具有明确的生命周期 - 与包含它的 pod 相同。[...] 当 Pod 不复存在时,该卷也将不复存在。也许比这更重要的是,Kubernetes 支持多种类型的卷,一个 Pod 可以同时使用任意数量的卷。[...] 卷只是一个目录,Pod 中的容器可以访问它。该目录是如何形成的,支持它的介质和内容由使用的特定卷类型决定。
想法是emptyDir
节点可以将其内容存储在另一个节点中。emptyDir 和 hostpath 之间基本上没有区别,除了 emptyDir 开始为空并且它们不是持久的(而且它们不需要任何特殊配置,因为它们使用节点上的现有存储)。HostPath 卷保留在原始节点上,除非重新启动后它在不同的节点上启动 - 然后它将无法访问该卷。因此,如果您的主机节点文件系统(将在其上创建 hostPath 的节点)上有一些路径,那么 hostPath 将允许它安装在任何 Pod 上。这里没有其他限制。
于 2018-08-01T16:03:13.077 回答