V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
yujianwjj
V2EX  ›  Docker

一个容器挂载的问题

  •  
  •   yujianwjj · Nov 30, 2023 · 1281 views
    This topic created in 880 days ago, the information mentioned may be changed or developed.

    需求:在每个 node 上启动一个 pod(命名为 x-pod),这个 x-pod 能够获取这个 node 上所有 pod 的文件系统里面的文件。

    容器是用 containerd 启动的,容器的文件系统是 overlay2.

    由于 containerd 的所有容器的文件都会挂载在 /run/containerd/io.containerd.runtime.v2.task/k8s.io/<container_id>/rootfs 这个目录下,所以我就直接让这个 x-pod 以 mount hostPath 的方式挂载这个/run/containerd 目录,发现也确实能够读取其他 pod 的文件系统内容。

    现在的问题时,当这个 node 上有新的 pod 启动的时候,x-pod 能够读到 /run/containerd/io.containerd.runtime.v2.task/k8s.io/<新 pod 的 container_id>/rootfs 这个目录,但是这个目录确实空的,当然直接在宿主机上看这个目录肯定是有内容的。

    求教如何解决这个问题。

    1 replies    2023-12-01 11:43:06 +08:00
    julyclyde
        1
    julyclyde  
       Dec 1, 2023
    你这个 mount hostPath 存在原理性问题吧?

    你的 x-pod 启动的时候已经知道了整个系统的 mount 关系;但是新增的 mount 关系并不会反应给它
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2846 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 15:22 · PVG 23:22 · LAX 08:22 · JFK 11:22
    ♥ Do have faith in what you're doing.