Jenkins—Master/Slave模式
Jenkins可部署在windows或者linux平台上,项目系统的用户多数为windows系统。如果Jenkins部署在linux上,而自动化任务要在windows平台执行,那么就需要使用Jenkins的master/slave模式了。
一、Master/Slave模式
Jenkins有非常丰富的插件,可以做很多事情,而部署Jenkins的服务配置性能是有限的,当Jenkins要完成上百个任务时,就会占用非常多的资源,甚至有些资源之间是有冲突的,所以为了分担Jenkins服务器的压力,引入了master/slave模式。
- master:Jenkins服务器。主要负责UI展示、任务调度、系统管理工作
- slave:执行机(奴隶机)。主要执行master分配的任务,并返回任务的进度和结果
类似于我们在职场中的“主管-小弟”模式,主管可以接上级的各种任务,并将任务分派到各位小弟手中,跟踪各位小弟的任务进展和任务结果
一个master + 多个slave = 一个主管 + 多个小弟
二、Master上添加执行机
1.以系统管理员的账号登录Jenkins系统
进入Manage Jenkins—>Manage Nodes:

2.开启JAVA Web启动代理
进入Manage Jenkins—>Configure Global Security:


开启后,保存
3.添加一个新的节点

4.配置节点信息

5.保存配置
保存后,在节点列表中,可以看到此节点,并且右下角有个红色的叉,表示slave执行机尚未与master主机连接

三、slave机向master主机注册
在slave机的浏览器当中,访问master的Jenkins地址,点击下图中的slave机名字,可以进入执行机页面

以windows为例,在执行机页面中,点击Launch图标,会下载slave-agent.jnlp

双击slave-agent,jnlp,弹出下图,点击运行

windows出现下图弹框,说明已经与master主机连接成功

在浏览器刷新一下执行机页面,会自动显示已经连接的状态

四、集成自动化项目
配置好执行机之后,接下来我们就可以使用slave机执行自动化任务了,在Job的配置中,General选项勾选 限制项目的运行节点(Resrict where this project can be run),在 标签表达式(Label Expression)中输入执行机名字或者标签名来指定当前任务由哪个slave执行机来执行,后续的构建内容全部都是在此执行机上执行,因此该执行机必须具备执行此任务的能力,即执行机机器上必须有运行自动化脚本的环境

Jenkins—Master/Slave模式的更多相关文章
- jenkins master/slave模式
master是主机,只有master装jenkins slave是小弟机无需装jenkins,主要执行master分配的任务 一.新建slave 1.新建slave的方法:点击magian jenki ...
- jenkins的Master/Slave模式
一. Master/Slave模式 分担jenkins服务器的压力,任务分配到其它执行机来执行 Master:Jenkins服务器 Slave:执行机(奴隶机).执行Master分配的任务,并返回任务 ...
- Jenkins Master/Slave架构
原文:http://www.cnblogs.com/itech/archive/2011/11/11/2245849.html 一 Jenkins Master/Slave架构 Master/Slav ...
- 基于Kubernetes构建企业Jenkins master/slave CI/CD平台
搭建平台目的: k8s中搭建jenkins master/slave架构,解决单jenkins执行效率低,资源不足等问题(jenkins master 调度任务到 slave上,并发执行任务,提升任务 ...
- ActiveMQ集群支持Master/Slave模式
现在ActiveMQ, 在Failover方面有两种解决方案:Pure Master Slave和Shared File System Master Slave. 先看Pure Master ...
- MySQL master/slave 模式
1 .复制 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的 数据复制到其它主机(slaves)上,并重 ...
- Jenkins master slave设置遇到的坑以及解决办法
写好了selenium测试脚本,本地运行没问题,但是现在流行分布式运行,并行执行以显得高大上. 然而,装高大上是要付出代价的. Selenium Grid 已经完美实现分布式和并行了. 奈何现在会Je ...
- Jenkins设置Master/Slave
说明:通过master/slave模式,可以在master节点上统一管理其他slave节点. 下面说明一步步实现master/slave模式. 第一步:以管理员登录jenkins.点击"系统 ...
- hadoop的master和slave模式
hadoop的集群是基于master/slave模式. namenode和jobtracker属于master,datanode和tasktracker属于slave,master只有一个,而slav ...
随机推荐
- diango中的MTV——FBV/CBV以及装饰器的复用问题解决
MVC M: model 模型 与数据库交互 V: view 视图 HTML C:controller 控制器 流程 和 业务逻辑 MTV M:model ORM T:template 模板 HTML ...
- EasyExcel示例(阿里巴巴)基于Maven
首先感谢阿里巴巴提供了easyexcel工具类,github地址:https://github.com/alibaba/easyexcel 注意!!这里只是一个简单的示例,VC大法即可使用,对于复杂的 ...
- Python3 中的Number
Python3 支持 int.float.bool.complex(复数). 在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long. 像大多数语言一样,数 ...
- 误区以为父组件render一次,子组件会重新初始化
初学react的时候我有一个误区,以为父组件render的一次,会将子组件先卸载,再将子组件重新初始化,事实证明不是. 这是对react生命周期函数不太清楚. 父子组件都初始化后,父组件再render ...
- centos安装jdk10
下载一个jdk10文件到linux : wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=ac ...
- Python 变量与运算符
变量 基本概念: 1. 变量,名字,数据的唯一标识2.变量命名: 字母.数字.下划线: 不能以数字开头: 区分大小写: 不能使用保留字和关键字: 命名要有意义:(多个单词时,推荐使用下划线连接) 3. ...
- Redis入门(三)-Redis的安装及操作key的命令介绍
前两节对Redis做了一些详细的介绍,那么接下来开始我们就正式进入Redis的学习阶段. 安装Redis Windows下安装redis非常方便, 下载压缩包解压即可使用. 链接:https://pa ...
- Mac PyCharm2019激活码
此教程支持最新2019.2版本Pycharm及其他软件 此教程实时更新,请放心使用:如果有新版本出现猪哥都会第一时间尝试激活: pycharm官网下载地址:http://www.jetbrains.c ...
- maven打成jar包后,其他工程导入不进去
关键点 classifier中配置exec pom文件配置 <plugin> <groupId>org.springframework.boot</groupId> ...
- [IDA] 自动下载符号
当现实无法自动下载符号时,看下面交互窗口,提示安装 VC++ 2008. 安装成功之后就会自动下载符号.