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

2023-02-22 14:21:32 +08:00
 dropdatabase

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

858 次点击
所在节点    程序员
12 条回复
ysicing
2023-02-22 14:30:14 +08:00
看看 buildkitd 的 pod yaml 有没有关系信息;另外排查有没有构建容器镜像,这部分有没有用 buildctl 相关的。
dropdatabase
2023-02-22 14:34:31 +08:00
@ysicing 感谢回复,使用 kubectl get -A 查找,集群中不存在 buildkitd 相关的 pod 、deployment 、svc 相关的资源。
defunct9
2023-02-22 14:35:50 +08:00
开 ssh ,让我上去看看
dropdatabase
2023-02-22 14:36:16 +08:00
@ysicing 构建容器镜像使用的 docker ,Jenkins 拉起 slave pod 制作镜像,查找了相关的配置,无实际进展。
Judoon
2023-02-22 14:38:23 +08:00
只要能访问到 docker 的 socket 就都能创建,这点比较难排查。
有可能是用其他机器上 docker 客户端直接通过配置 ssh 访问机器上的 docker socket ,或者 k8s 发布的时候,yaml 中将 sockcs 路径映射到 pod 中,这样在 pod 中就能使用 docker 客户端命令(包括 buildx )来创建。不依赖宿主机上有没有 buildx 子命令
dropdatabase
2023-02-22 14:41:25 +08:00
@Judoon 应该是你说的这种情况,docker socket 挂载进了 slave pod 。因为宿主机就没有 buildx 命令。。。但是构建镜像时使用了 buildx....大佬 有何高招?
seers
2023-02-22 14:48:32 +08:00
去 control plane 查 api ,scheduler ,controller 日志,还有 node 的 kubelet 日志,对照看看总有蛛丝马迹
Judoon
2023-02-22 15:05:24 +08:00
@dropdatabase 你把当前调度到此台机器的 pod 取出来,看一下,有没有挂载 /var/run/docker.sock 路径的
Judoon
2023-02-22 15:07:45 +08:00
再者把 docker daemon 的日志级别调一下看看有没有打出来调用方
dropdatabase
2023-02-22 15:20:44 +08:00
@Judoon 大佬 请留个联系方式,奉上红包以示感谢。
Judoon
2023-02-22 15:22:24 +08:00
@dropdatabase 查到了? dGFyZGlzX2ZhbmcK
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

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/918238

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX