操作系统信息
Rocky Linux 9.4,1 controller 2 worker

Kubernetes版本信息
v1.23.10

容器运行时
docker 27.2.0

KubeSphere版本信息

v3.4.1
在线使用kk安装

问题是什么
在测试环境使用kk在线安装部署了ks v3.4.1,将所有扩展组件都开启了,目前功能上没有问题,应用治理、链路追踪、灰度发布等都OK,CI/CD功能上也没问题。但是最近发现jenkins执行pipeline时,如果是首次创建POD,并且遇到sh脚本就会挂起个1分钟左右,如图

这里我只是执行了一个sh ‘id’,实际肯定一瞬间就应该结束,但是被挂起了近1分钟

第二步我又执行了一个sh ‘sleep’,这次不再被挂起

而如果保留POD,供下一次pipeline复用,就不会出现挂起的问题,如图

这次sh ’id’不到1秒就结束了

我已经检查过POD调度、创建、启动和连接到jenkins master的时间,整个过程才10秒钟左右,不应该是这里的问题

(ks中jnlp的日志我也看了,跟这个时间差不多)

这个挂起并不会一直挂起,我测试过很多命令,基本都是1分钟左右就会继续执行,而且在同一个pipeline中后续再遇到sh命令就不会挂起;同样的,我将git clone放在第一步,也会出现挂起的问题。

但是奇怪的点是,如果我执行的不是sh命令,而是jenkins内置的其他命令,比如echo,就不会挂起,如图

这里第一步执行的是echo,而不是sh ‘echo’,所以并没有被挂起,但是第二步遇到sh ’sleep’时依然会挂起,如图

除了测试复用POD的现象外,所有测试我都将已存在的jenkins slave POD删除后进行,以保证环境相同。

请问各位有没有什么办法能够解决或者排查这个挂起的问题?

    Lumos 终端运行 kubectl -n kubesphere-devops-worker get pod -w ,然后再去运行流水线,观察kubesphere-devops-worker 下 pod 的创建/启动时间。 agent pod 需要拉取镜像什么的,会耗时一些

      stoneshi-yunify 用于构建agent pod的节点是固定的worker,镜像已经在本地拉取好了,上面文章里也贴出了jenkins的系统日志,从pod创建到完成连接只有10秒钟,并且后面我说的sh挂起的时间是不包含这10秒的

      25 天 后

      有没有哪位大佬有时间复现一下环境测试测试的?这个现象我感觉是某个系统bug,我换了两个环境部署了同样的集群,都有这个问题