jenkins结合kubernetes实现可伸缩式动态构建
#前言~~~~了解高效的持续集成对管理大规模工程的必要性
能搭建基于jenkins的持续集成平台,熟悉jenkins插件的基本配置
能搭建docker的集群管理kubernetes
能封装项目构建依赖的环境基础镜像
解决痛点
构建项目爆发式增长(java、php、node...),手动创建slave绑定项目,工作繁琐;由于资源分配不均经常会出现排队构建现象,等等。
#jenkins+K8S架构图
#以maven管理的java项目为例配置
第一步:安装好jenkins,并登陆
实验环境可用docker镜像快速启动,这里不过多介绍docker pull jenkins
第二步:安装插件 ElasticBox Jenkins Kubernetes CI/CD Plug-in
ElasticBox Jenkins Kubernetes CI/CD Plug-in
This plugin is a replacement for Jenkins's email publisher. It allows to configure every aspect of email notifications: when an email is sent, who should receive it and what the email says
第三步:开启JNLP
开启Jenkins slave的JNLP注册 (slave是通过WEB- JNLP协议注册到master)
第四步:下载jenkins-slave镜像,并封装好java的maven环境
#docker pull docker.io/jenkinsci/jnlp-slave
Dockerfile封装maven环境
第五步:配置Jenkins k8s插件配置项
系统设置 ==》最下面,新增一个云
第六步:在配置JAVA项目中,构建调用K8S
第七步:测试
页:
[1]