V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dropdatabase
V2EX  ›  程序员

付费请教~运维大佬看过来-查找 centos 系统上 buildkitd 容器来源

  •  
  •   dropdatabase · 2023-02-22 14:21:32 +08:00 · 849 次点击
    这是一个创建于 625 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题,解决我的问题,发 100 元红包以示感谢。 k8s 集群中有多台 node 节点,目前有 2 个节点上出现了 buildkitd 容器,不清楚该容器来源。想查出来 buildkitd 怎么来的。 https://www.v2ex.com/t/915936#reply7 @docker @Kubernetes @linux

    ysicing
        1
    ysicing  
       2023-02-22 14:30:14 +08:00
    看看 buildkitd 的 pod yaml 有没有关系信息;另外排查有没有构建容器镜像,这部分有没有用 buildctl 相关的。
    dropdatabase
        2
    dropdatabase  
    OP
       2023-02-22 14:34:31 +08:00
    @ysicing 感谢回复,使用 kubectl get -A 查找,集群中不存在 buildkitd 相关的 pod 、deployment 、svc 相关的资源。
    defunct9
        3
    defunct9  
       2023-02-22 14:35:50 +08:00
    开 ssh ,让我上去看看
    dropdatabase
        4
    dropdatabase  
    OP
       2023-02-22 14:36:16 +08:00
    @ysicing 构建容器镜像使用的 docker ,Jenkins 拉起 slave pod 制作镜像,查找了相关的配置,无实际进展。
    Judoon
        5
    Judoon  
       2023-02-22 14:38:23 +08:00
    只要能访问到 docker 的 socket 就都能创建,这点比较难排查。
    有可能是用其他机器上 docker 客户端直接通过配置 ssh 访问机器上的 docker socket ,或者 k8s 发布的时候,yaml 中将 sockcs 路径映射到 pod 中,这样在 pod 中就能使用 docker 客户端命令(包括 buildx )来创建。不依赖宿主机上有没有 buildx 子命令
    dropdatabase
        6
    dropdatabase  
    OP
       2023-02-22 14:41:25 +08:00
    @Judoon 应该是你说的这种情况,docker socket 挂载进了 slave pod 。因为宿主机就没有 buildx 命令。。。但是构建镜像时使用了 buildx....大佬 有何高招?
    seers
        7
    seers  
       2023-02-22 14:48:32 +08:00 via iPhone
    去 control plane 查 api ,scheduler ,controller 日志,还有 node 的 kubelet 日志,对照看看总有蛛丝马迹
    Judoon
        8
    Judoon  
       2023-02-22 15:05:24 +08:00
    @dropdatabase 你把当前调度到此台机器的 pod 取出来,看一下,有没有挂载 /var/run/docker.sock 路径的
    Judoon
        9
    Judoon  
       2023-02-22 15:07:45 +08:00
    再者把 docker daemon 的日志级别调一下看看有没有打出来调用方
    dropdatabase
        10
    dropdatabase  
    OP
       2023-02-22 15:20:44 +08:00
    @Judoon 大佬 请留个联系方式,奉上红包以示感谢。
    Judoon
        11
    Judoon  
       2023-02-22 15:22:24 +08:00
    @dropdatabase 查到了? dGFyZGlzX2ZhbmcK
    Lake1xiongyi
        12
    Lake1xiongyi  
       2023-02-22 15:24:50 +08:00
    1.检查系统中所有正在运行的容器 docker ps
    2.获取 buildkitd 容器的 ID docker inspect -f '{{.id}}' buildkitd
    3.rpm -qf /var/lib/docker/overlay2/<container_id>/merged
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2889 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 02:34 · PVG 10:34 · LAX 18:34 · JFK 21:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.