本文根据自己在工作中实际应用,总结了Jenkins Master Slave配置的详细流程。其中,系统centos 7为Master,windows 10为Slave。
1. Jenkins安装(windows + centos)
(1)在windows上安装
官网下载地址:https://jenkins.io/download/
选择操作系统:Windows
(2)在centos上安装
选择操作系统:Red Hat/Fedora/CentOS
根据页面提示使用命令行下载
2. 控制台中文乱码解决(windows + centos7 + 不同节点slave乱码)
(1)windows控制台解决方案
(a)Jenkins配置文件设置
安装路径下,找到jenkins.xml文件
在参数<arguments>中添加-Dfile.encoding=utf-8
(b)Jenkins平台环境参数设置
系统管理--系统设置
(2)centos7控制台解决方案
找到Jenkins配置文件/etc/sysconfig/jenkins
(a)添加JAVA OPTION编码参数
(b)配置文件最后EXPORT字符格式
(3)不同节点slave乱码解决方案
先配置完Master/Slave模式(见下方),进入节点管理,点击Slave服务器
(a)点击Launch按钮,下载slave-agent.jnlp文件
(b)点击agent.jar链接,下载agent.jar文件
(c)拷贝命令行,添加编码参数(如下)后,从Slave服务器启动关联
3. Master Slave设置
(1)插件安装
系统管理--插件管理,选择Tab可选插件,查找Node and Label parameter plugin
勾选后,直接安装
(2)参数准备
(a)系统管理--全局安全配置,代理端口选择“随机选取”
(b)API Token勾选Enable Agent -- Master Access Control
(3)网络设定--Jenkins URL
(a)错误提示
Master/Slave 需要配置可互联的IP地址(建议局域网,排除防火墙干扰),否则连接有问题
Jenkins平台也会进行自检,如果不正确会有如下提示
(b)参数设置
系统管理--系统设置--Jenkins Location--Jenkins URL,根据服务器IP地址/hostname设定参数
(4)新建节点
系统管理--节点管理--新建节点,参数范例如下:
其中,参数的要点是(a)远程工作目录、(b)启动方式
(5)设备连接
(a)系统管理--节点管理,点击未连接的Slave服务器(slave-windows)
看到Jenkins推荐的连接方式
(b)考虑到之前提到的中文乱码问题,选择命令行+参数方式启动Slava服务器
(具体方式参考之前写的“不同节点slave乱码解决方案”)
Slave服务器连接成功后,可以从Master平台看到设备信息
4. Web自动化项目设置(git + jdk + ant)
(1)全局工具配置
如果Master上的项目指定在Slave上运行,那么全局工具的各种HOME路径都是Slave上工具的路径
(a)JDK设置
系统管理--全局工具设置
范例中,Master设备为centos7,而由于Slave服务器为windows设备,所以JAVA_HOME路径为Slave服务器设定的路径。(Slave上官网下载安装JDK,配置环境变量)
(b)Ant设置
同理,ANT_HOME路径设置为Slave服务器上的真实路径,忽略警告。
(Slave上官网下载安装ANT,配置环境变量)
(c)Git设置
Git默认即可,但Slave上需要安装命令行工具包。
(Slave上官网下载安装Git工具,配置环境变量)
(2)项目配置
(a)新建项目
主菜单点击“新建项目”,选择自由风格,范例如下:
(b)源码管理配置
选择Git,输入GitHub项目的URL地址
(c)构建配置
构建--增加构建步骤,选择Invoke Ant,范例设置如下:(工作项目是使用ANT来触发TESTNG的测试自动化项目)
其中,Ant Version和JDK皆为之前全局工具设置中预设的内容。
5. JOB配置在Slave运行
如限定JOB在指定Slave上运行,需要在项目配置中设置“限制项目的运行节点”,范例如下:
本文用文字和截图详细说明了Jenkins Master Slave配置的每一步细节,希望对大家有用。