jenkins跨K8S集群实现jenkins slave动态构建
一、jenkins连接k8s集群(略,网上有很多种方法)
二、创建podtemplate模板(重点)
这里博主一直踩坑,花费两天才成功解决,因为配置错误导致k8s创建pod的时候一直出现 terminating 状态
错误配置示范:
正确配置示范:
容器的名称必须是 jnlp
镜像是 jenkins/inbound-agent
验证:
pipeline脚本
pipeline {
agent {
label 'jnlp-slave'
}
stages {
stage('test') {
steps {
script {
println "test"
}
}
}
}
}
构建结果成功
## 附加排错方法,各种查看日志
- 查看容器构建的描述信息 kubectl describe pods pods-name -n devops
- 查看pod是构建在哪台机器上,然后在node节点查看容器启动日志 docker logs -f container_name
- jenkins上 catalina.out 日志
参考博客:Jenkins master位于k8s集群外,实现jenkins slave的动态构建_木讷大叔爱运维的博客-CSDN博客