Jenkins Kubernetes插件Agent未部署到指定配置云集群问题咨询
Jenkins Kubernetes插件多云调度异常解决方案
根因说明
你当前使用的Kubernetes Plugin 1.28.5存在已公开确认的多云路由Bug:当Jenkins配置了多个Kubernetes云时,即使流水线显式指定了非默认云名称,插件底层创建Kubernetes客户端时仍会错误复用默认名为kubernetes的云连接配置,最终把Pod调度到默认集群。
你看到的日志Created Pod: devkube default/xxx只是插件直接读取传入的cloud参数拼接的输出文本,实际发起Kubernetes API请求时用的还是默认云的连接配置,和日志打印的云名称无关。Test Connection功能仅校验集群版本查询权限,不会校验Pod增删改查权限,也不会触发实际调度逻辑,因此无法发现这个路由问题。
修复方案
- 最优方案:直接升级Kubernetes Plugin到1.29.1及以上稳定版本,该版本已彻底修复多云场景下的连接路由错误,升级后现有Jenkinsfile无需任何修改即可正常将Pod调度到
devkube集群。 - 临时规避方案:如果暂时无法升级插件,进入
/configureClouds页面把devkube集群的云名称改为kubernetes设为默认云,原有默认集群改成其他名称,绕开插件的路由判断缺陷即可。
补充校验项
排除版本Bug后,可核对以下配置避免其他异常:
- 确认
devkube云配置中填写的Kubernetes API地址、访问凭证均对应目标GKE集群,没有和默认集群配置填混,关联的服务账号需要拥有目标命名空间的Pod创建、删除、监听权限。 - 确认
devkube云配置下的Jenkins地址字段填写正确,避免Agent启动后无法回连Jenkins导致的调度失败。
内容的提问来源于stack exchange,提问作者gunzl1ng3r
相关产品推荐
相关产品推荐

