操作系统信息
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删除后进行,以保证环境相同。
请问各位有没有什么办法能够解决或者排查这个挂起的问题?