jenkins+k8s实现CICD

使用helm在k8s集群中安装jenkins

jenkins需要的插件:

  • Git Parameter Plug-In
    提供选择分支、tag、revision的能力
  • Gitlab Authentication plugin
    这是一个使用gitlab OAuth认证的插件
  • GitLab Branch Source Plugin
    为Jenkins中的GitLab仓库提供分支源和文件夹组织功能
  • Kubernetes plugin
    整合jenkins和k8s的插件
  • Localization: Chinese (Simplified)
    Jenkins Core 及其插件的简体中文语言包,由 Jenkins 中文社区维护。
  • Pipeline
    为JenkinsA插件套件中的GitLab存储库提供分支源代码和文件夹组织功能,允许您编排简单或复杂的自动化。
  • Kubernetes Continuous Deploy Plugin
    实现jenkins自动部署到k8s集群的插件
  • SonarQube Scanner for Jenkins
    这个插件让你非常容易集成SonarQube 代码质量管理平台

jenkins中k8s集群的配置

image.png
image.png
image.png
jenkins/inbound-agent
registry.cn-beijing.aliyuncs.com/acs-sample/jenkins-slave-maven:3.3.9-jdk-8-alpine
docker
node
image.png
image.png

遇到的问题

高版本Jenkins关闭跨站请求伪造保护(CSRF)解决403
根据官网描述,Jenkins版本自2.204.6以来的重大变更有:删除禁用 CSRF 保护的功能。通过网页无法关闭CSRF,因为集成服务都是在内网操作,为删繁就简,考虑关闭 CSRF 保护功能,经过实践在Jenkins启动前加入相关取消保护的参数配置后启动Jenkins,即可关闭CSRF,配置内容如下:

-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true

容器中的配置如下:


image.png

你可能感兴趣的:(jenkins+k8s实现CICD)