2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

Posted 从零学习

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2. Jenkins+Git+Kubernetes+Pipeline配置详细说明相关的知识,希望对你有一定的参考价值。

2.1     安装插件

为了后期工作,我们首先安装需要的插件。在页面左上角选择【系统管理】→【管理插件】。

进入【管理插件】的页面,点击【已安装】,可以看看已经安装的插件列表。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

已经安装的插件是Jenkins建议安装的最基本的插件,为了后续集成测试工作,我们还需要安装其他插件。点击【可选插件】,在【过滤】文本框内填写需要安装的插件名称,找到相应的插件后,勾选,点击下面的直接安装。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

进入插件安装过程,一个插件的安装需要将其依赖的所有插件安装完成后,才开始安装自身插件,其他插件的安装过程同理。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

注意:安装Blue Ocean插件失败,因为其依赖的插件安装需要最新版本的Jenkins版本,选择将Jenkins更新到2.89.2版本。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

2.2     Jenkins的安全性配置

选择【系统配置】→【全局安全配置】。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

选择【启用安全】,并且选择【允许用户注册】。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

在【授权策略】处选择【项目矩阵授权策略】,按照需求为用户授权。注意:此处可以添加的用户/组必须为已经注册的用户。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

在【Agents】处指定端口:7777。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

2.3     Jenkins的全局设置

选择【系统管理】→【系统设置】。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

主目录可以根据自己的习惯去进行更改,具体更改方式是去设置环境变量:JENKINS_HOME=XXX,然后重新启动jenkins。执行者数量表示同时进行构建的作业数量,默认填写2。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

添加环境变量,设置Jenkins的字符集为UTF-8。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

添加SSH远程主机,填写IP、端口和登录信息,点击右下角的【Check connection】按钮,出现左侧的成功连接提示信息,表示连接成功。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

添加Gitlab信息,Connection name是自己起的连接名称,这里与URL保持一致;Gitlab host URL是Git网址;Credentials是登录验证信息。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

注意:添加验证信息时,Kind选择Gitlab API token类型,API token来自自己的Git账户信息,点击Git网站右上角标志,选择【Setttings】,选择【Account】选项卡,将Private token复制到API token中即可。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

设置GitLab的账户信息。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

邮箱通知配置。个人建议:SMTP认证的用户名最好和上面的系统管理员邮箱一致,否则会出现莫名其妙的错误。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明新增Kubernetes云。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

点击【Add Pod Template】,填写pod的信息,Name写jnlp,否则会出问题。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

在pod内添加容器,点击【Add Container】,Name和上面保持一致,Docker image是自己建的:10.0.251.196/jenkins/jnlp-slave:2.60.2_2.0;其他选择默认。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

添加四个Volumes,点击【Add Volume】。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明完成后,点击保存。

附加:

在10.0.251.165服务器的/home/nfs目录下新建4个文件夹ci-python、public-boss-jarfiles、transfer、yamldir,分别存储后期需要的文件,同时每个文件夹对应了Kubernetes设置的Volume。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

2.4     新建自由风格的作业

在主页面左上角,选择【新建】。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

进入新建作业的页面,输入作业名称test,选择构建自由风格的作业,点击确定。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

为了使用Kubernetes工具,将作业限制在我们创建的jnlp上构建。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

添加一条简单的构建语句,其他默认,点击保存。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

进入作业空间,可以点击【立即构建】,对作业进行构建。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

点击某次作业序号,可以进入到对应的构建详情页面,点击左侧的【Console Output】,进入控制台输出页,可以查看本次作业构建的输出日志。注意:作业序号为蓝色表示构建成功,红色表示构建失败,灰色表示构建中断。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

通过查看后台信息的输出,我们可以看到Kubernetes的执行流程,在命名空间ci新建POD,然后进行作业调度并执行,全部执行完成后,将POD停止,并与POD断开连接。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

 

问题:

  • 第一次构建作业时,Pod总是创建不成功,后台信息提示Volume挂不上。

经过各种查资料和比对自己对Kubernetes的设置,参数Argumentto pass to he command和NFS Volume的路径填错了。找错时最头痛的事情,所以配置时,一定要认真仔细。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明


  • 作业构建过程中,后台出现信息:namespace已经达到创建70个容器的极限。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

        解决方法:将namespace删除后重新创建

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

2.5     新建Pipeline作业

  • 在主页面左上角,选择【新建】。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

  • 进入新建作业的页面,输入作业名称both-work,选择Pipeline类型,点击确定。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

  • 进入作业配置页面。勾选【启动项目安全】,添加用户,并为用户授予build、read和workspace的权限。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

  • 勾选【参数化构建过程】,并添加需要的参数,这里一次添加了7个String类型的参数。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

  • 添加Pipeline设置,重点是配置构建脚本,这里指的是红色标记的build.groovy文件。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

  • 点击【保存】,作业就创建成功了。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

  • 点击作业名称,进入作业空间。点击【配置】,可以对作业的配置进行修改。【Build History】是作业构建历史。

2. Jenkins+Git+Kubernetes+Pipeline配置详细说明

  • 点击【Build with Parameter】,对作业进行构建。输入参数后,点击【开始构建】。

  • 点击相应构建任务序号,在页面左侧选择【Console Output】,可以查看作业构建的具体过程输出日志。


以上是关于2. Jenkins+Git+Kubernetes+Pipeline配置详细说明的主要内容,如果未能解决你的问题,请参考以下文章

kubernetes搭建jenkins

jenkins 自动构建gitlab项目

基于Kubernetes集群的Jenkins CI/CD版本上线流程部署

将Jenkins部署在kubernetes集群中

jenkins+kubernetes(k8s)+docker持续集成与部署(CI/CD) - k8s系列

Jenkins + Gitlab + harbor + Kubernetes实现CI/CD