【问题标题】:Using host paths for persistent volumes with restrictions将主机路径用于具有限制的持久卷
【发布时间】:2019-01-08 06:00:34
【问题描述】:

有什么方法可以配置 k8s 以便工作节点上预定义的主机路径仅适用于属于特定命名空间的 pod,而其他命名空间中的其他 pod 无法挂载它。

【问题讨论】:

    标签: kubernetes kubernetes-security


    【解决方案1】:

    没有这种可能性。这与卷的性质有关。具体来说:

    Kubernetes 卷具有明确的生命周期 - 与 pod 相同 包含它。 [...] 当 Pod 不再存在时,卷将 也不复存在。也许比这更重要的是,Kubernetes 支持多种类型的卷,一个 Pod 可以使用任意数量的卷 同时地。 [...] 卷只是一个目录,它是 Pod 中的容器可以访问。那个目录是怎么来的, 支持它的媒介和内容是由特定的 使用的卷类型。

    emptyDir 的想法是节点可以将其内容存储在另一个节点中。除了 emptyDir 开始为空并且它们不是持久的之外,emptyDir 和 hostpath 之间基本上没有区别(而且它们不需要任何特殊配置,因为它们使用节点上的现有存储)。 HostPath 卷保留在原始节点上,除非重新启动后它在不同的节点上启动 - 然后它将无法访问该卷。 因此,如果您的主机节点文件系统(将在其上创建 hostPath 的节点)上有一些路径,那么 hostPath 将允许它安装在任何 Pod 上。这里没有其他限制。

    【讨论】:

      猜你喜欢
      • 2018-12-19
      • 2020-12-08
      • 1970-01-01
      • 2023-03-08
      • 2021-10-14
      • 2015-11-06
      • 2021-04-13
      • 2020-05-27
      • 1970-01-01
      相关资源
      最近更新 更多