一、环境准备
1、集群介绍
Jenkins是当下比较流行的一款功能强大的持续集成工具,它支持搭建集群,来提高多项目的构建速度,模式为主从模式,master会将任务分配到各个从节点进行并发构建,从而提高速度
2、环境准备
- 服务器: 准备两台服务器, 一台做为master, 一台作为slave, 设A为master, B为slave
- 服务器系统: Linux(我这里使用Ubuntu)
- Jenkins版本: 2.287, Jenkins只需要装在master即可, 部署教程可参考: juejin.cn/post/695020…
3、slave节点环境准备
根据你是用的源代码管理工具git或者svn来安装对于的工具,还有需要安装可能会构建的项目所需的环境,比如.NET Core 项目就需要安装 .NET Core SDK,JAVA项目就需要安装JAVA环境。从节点无需安装Jenkins。
这里介绍下Jenkins构建python自动化测试任务, slave节点需要准备的环境:
- python3
- jdk >= 8
- google-chrome (注意版本)
- chromedriver (版本要和google-chrome版本一致)
- python 所需包环境, 可在本地生成环境文件, 从节点执行
pip3 install -r requirements.txt - allure (需要allure生成测试报告)
二、Jenkins创建新节点
1、主从节点建立连接 (创建凭据)
-
master生成密钥 master 执行以下命令:
# 生成密钥, 生成的密钥保存在 ~/.ssh/id_rsa ssh-keygen # 将密钥发送到slave节点, 此过程会输入slave的登录密码, 迷人为root用户 ssh-copy-id slave_ip -
jenkins创建凭据
jenkins系统管理 ==> 凭据管理 ==> 新建 ==》 添加全局凭据
2、jenkins新建节点
-
新建节点 系统管理 ==> 管理节点 => 新建节点
点击确定, 接入到节点信息配置:
点击确定之后, 返回到节点管理界面,这个时候已经能看到我们刚刚新建的slave1节点, 但这节点还处于离线状态, 我们点slave1 进入到节点里:
如果新建节点时密钥验证方式选择手动验证, 进入到节点之后需要点击左侧 Trust SSH Host Key, 手动验证下密钥
密钥验证成功之后, 点击启动代理, 如果无报错, 节点就代理成功, 返回到节点管理就能看到slave1节点已经是在线状态了。
三、选择执行任务的节点及节点属性配置
1、选择标签节点执行任务
-
自由风格的任务配置
任务配置里勾选 限制项目的运行节点, 输入标签名即可
-
pipeline 配置
pipeline { agent { node { label 'linux_python_test' }} }
2、从节点 Allure工具配置
节点管理 => 点击要配置的节点 => 节点属性 => 勾选Tool Locations => 新增 Allure Command