文章目录

  • 1.Jenkins分布式
  • 2.如何实现
  • 3.详细步骤:
  • 4.当同时执行多个任务时,会调度到slave节点执行
  • 5.slave节点实现捆绑
  • 6.权限管理


1.Jenkins分布式

在实际应用中,尤其是随着分布式和微服务的流行,企业通常有多套测试环境,同时可能有数十个甚至上百个构建请求,单节点的Jenkins不足以支撑这些构建需求,造成大量的构建请求等待和时间浪费。基于这种情况Jenkins提供了Master Slave机制,Master负责调度任务和发送请求,多个Slave可以并发的执行构建任务,大大加速了构建过程。Jmeter Master Slave机制除了可以加速构建以外,还可以用于分布式的自动化测试,当自动化测试代码非常多或者是需要在多个浏览器上并行的时候,可以把测试代码划分到不同节点上运行,从而加速自动化测试的执行。

1.加速不同环境的构建
2.降低master压力

jenkins 效果 jenkins性能_自动化测试


Jenkins Master Slave的搭建需要至少两台机器,一台Master节点,一台Slave节点(实际生产中会有多个Slave节点)。Jenkins分布式环境搭建步骤如下:

• Master节点上安装和配置Jenkins

• Master节点上新增Slave节点配置,生成Master-Slave通讯文件SlaveAgent

• Slave节点上运行SlaveAgent,通过SlaveAgent实现和Master节点的通讯

• Master节点上管理Jenkins项目,指定Slave调度策略,实现Slave节点的任务分配和结果搜集

Master节点上安装和配置Jenkins

Master节点上安装配置Jenkins和单机安装配置Jenkins步骤一致,需要预先安装如下依赖软件和完成如下配置

jenkins 效果 jenkins性能_自动化测试_02

2.如何实现

系统管理----》节点管理----》----》新建节点

jenkins 效果 jenkins性能_Jenkins_03


jenkins 效果 jenkins性能_Jenkins_04

3.详细步骤:

slave节点安装:
	yum install java git maven -y
1.在master上添加slave节点信息
2.slave要与master完全高度一致
	[root@jenkins ~]# scp -rp /usr/local/sonar-scanner-4.0.0.1744-linux/ root@172.16.1.130:/usr/local/
	[root@slave ~]# ln -s /usr/local/sonar-scanner-4.0.0.1744-linux/ /usr/local/sonar-scanner

3.脚本
	[root@jenkins ~]# scp -rp /scripts/ root@172.16.1.130:/
	
4.git 免密登录
	[root@slave ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@172.16.1.8
	[root@slave ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@172.16.1.7

5.sonarqube客户端
6.maven环境
7.免密登录
	master会发送一个jar包给slave
	PS:slave完全不需要安装Jenkins

jenkins 效果 jenkins性能_自动化测试_05

4.当同时执行多个任务时,会调度到slave节点执行

jenkins 效果 jenkins性能_jenkins 效果_06

5.slave节点实现捆绑

jenkins 效果 jenkins性能_Jenkins_07

6.权限管理

基于插件进行管理;

jenkins 效果 jenkins性能_安装配置_08

  • 全局权限:所有的用户都能正常登陆到Jenkins服务器
  • 项目权限:(项目的命名一定要有规范)
    (1)开发组的角色对应的是freestyle的项目
    (2)给开发组角色分配权限
    (3)将开发组人员关联该角色
shopping
shopping-project-01
shopping-project-02

全局:

jenkins 效果 jenkins性能_jenkins 效果_09


项目

jenkins 效果 jenkins性能_Jenkins_10