0

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

 1 year ago
source link: https://www.v2ex.com/t/918238
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

V2EX  ›  程序员

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

  dropdatabase · 1 小时 41 分钟前 · 281 次点击

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

ysicing

ysicing      1 小时 32 分钟前

看看 buildkitd 的 pod yaml 有没有关系信息;另外排查有没有构建容器镜像,这部分有没有用 buildctl 相关的。
dropdatabase

dropdatabase      1 小时 28 分钟前

@ysicing 感谢回复,使用 kubectl get -A 查找,集群中不存在 buildkitd 相关的 pod 、deployment 、svc 相关的资源。
defunct9

defunct9      1 小时 26 分钟前

开 ssh ,让我上去看看
dropdatabase

dropdatabase      1 小时 26 分钟前

@ysicing 构建容器镜像使用的 docker ,Jenkins 拉起 slave pod 制作镜像,查找了相关的配置,无实际进展。
Judoon

Judoon      1 小时 24 分钟前

只要能访问到 docker 的 socket 就都能创建,这点比较难排查。
有可能是用其他机器上 docker 客户端直接通过配置 ssh 访问机器上的 docker socket ,或者 k8s 发布的时候,yaml 中将 sockcs 路径映射到 pod 中,这样在 pod 中就能使用 docker 客户端命令(包括 buildx )来创建。不依赖宿主机上有没有 buildx 子命令
dropdatabase

dropdatabase      1 小时 21 分钟前

@Judoon 应该是你说的这种情况,docker socket 挂载进了 slave pod 。因为宿主机就没有 buildx 命令。。。但是构建镜像时使用了 buildx....大佬 有何高招?
seers

seers      1 小时 14 分钟前 via iPhone

去 control plane 查 api ,scheduler ,controller 日志,还有 node 的 kubelet 日志,对照看看总有蛛丝马迹
Judoon

Judoon      57 分钟前

@dropdatabase 你把当前调度到此台机器的 pod 取出来,看一下,有没有挂载 /var/run/docker.sock 路径的
Judoon

Judoon      54 分钟前

再者把 docker daemon 的日志级别调一下看看有没有打出来调用方
dropdatabase

dropdatabase      41 分钟前

@Judoon 大佬 请留个联系方式,奉上红包以示感谢。
Judoon

Judoon      40 分钟前

@dropdatabase 查到了? dGFyZGlzX2ZhbmcK
Lake1xiongyi

Lake1xiongyi      37 分钟前

1.检查系统中所有正在运行的容器 docker ps
2.获取 buildkitd 容器的 ID docker inspect -f '{{.id}}' buildkitd
3.rpm -qf /var/lib/docker/overlay2/<container_id>/merged

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK