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模式的更多相关文章

  1. jenkins master/slave模式

    master是主机,只有master装jenkins slave是小弟机无需装jenkins,主要执行master分配的任务 一.新建slave 1.新建slave的方法:点击magian jenki ...

  2. jenkins的Master/Slave模式

    一. Master/Slave模式 分担jenkins服务器的压力,任务分配到其它执行机来执行 Master:Jenkins服务器 Slave:执行机(奴隶机).执行Master分配的任务,并返回任务 ...

  3. Jenkins Master/Slave架构

    原文:http://www.cnblogs.com/itech/archive/2011/11/11/2245849.html 一 Jenkins Master/Slave架构 Master/Slav ...

  4. 基于Kubernetes构建企业Jenkins master/slave CI/CD平台

    搭建平台目的: k8s中搭建jenkins master/slave架构,解决单jenkins执行效率低,资源不足等问题(jenkins master 调度任务到 slave上,并发执行任务,提升任务 ...

  5. ActiveMQ集群支持Master/Slave模式

    现在ActiveMQ, 在Failover方面有两种解决方案:Pure Master Slave和Shared File System Master Slave.      先看Pure Master ...

  6. MySQL master/slave 模式

    1 .复制 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的 数据复制到其它主机(slaves)上,并重 ...

  7. Jenkins master slave设置遇到的坑以及解决办法

    写好了selenium测试脚本,本地运行没问题,但是现在流行分布式运行,并行执行以显得高大上. 然而,装高大上是要付出代价的. Selenium Grid 已经完美实现分布式和并行了. 奈何现在会Je ...

  8. Jenkins设置Master/Slave

    说明:通过master/slave模式,可以在master节点上统一管理其他slave节点. 下面说明一步步实现master/slave模式. 第一步:以管理员登录jenkins.点击"系统 ...

  9. hadoop的master和slave模式

    hadoop的集群是基于master/slave模式. namenode和jobtracker属于master,datanode和tasktracker属于slave,master只有一个,而slav ...

随机推荐

  1. Redis配置文件详解(redis.conf)

    # vi redis.conf   daemonize yes #是否以后台进程运行 pidfile /var/run/redis/redis-server.pid    #pid文件位置 port ...

  2. 十ITK读取一张dcm图像然后通过vtk显示

    一.功能 通过ITK读取一张图片(dcm格式),然后通过vtk显示出来. 版本:VS2019 itk5.0.1 vtk 8.2.0 二.程序主要思路 1-读取dcm格式图片 2-转换为vtk可以读取的 ...

  3. mybatis入门视频总结

    1.基础知识 2. 原生态jdbc问题总结 3.mybatis是什么 4.工程结构 5.SqlMapConfig.xml文件 6.sqlmap 包下新建user.xml文件(namespace,par ...

  4. Map随笔:最常用的Map——HashMap

    目录 Map随笔:最常用的Map--HashMap 前言: 1,HashMap的结构 2,HashMap的一些属性(JDK8) 3,HashMap的构造函数(JDK8) 4,HashMap的一些方法( ...

  5. SpringCloud gateway (史上最全)

    疯狂创客圈 Java 分布式聊天室[ 亿级流量]实战系列之 -25[ 博客园 总入口 ] 前言 ### 前言 疯狂创客圈(笔者尼恩创建的高并发研习社群)Springcloud 高并发系列文章,将为大家 ...

  6. fjnu2019第二次友谊赛 F题

    ### 题目链接 ### 题目大意: 一开始手上有 z 个钱币,有 n 天抉择,m 种投资方案,在每天中可以选择任意种投资方案.任意次地花费 x 个钱币(手上的钱币数不能为负),使得在 n 天结束后, ...

  7. C++如何使用宏定义来简化代码性能测试 | cpp macro like function to implement a performance profiler

    本文首发于个人博客https://kezunlin.me/post/65dc693d/,欢迎阅读最新内容! cpp macro like function to implement a perform ...

  8. Linux使用之centos下安装Java环境并运行Java程序

    前言 在Java中所有的程序都是在JVM上运行的.Java虚拟机(JVM)读取并处理经过编译的与平台无关的*.class文件.因为Java语言源程序编写后,先使用Java伪编译器进行伪编译,将其转换为 ...

  9. Spring 框架基础(01):核心组件总结,基础环境搭建

    本文源码:GitHub·点这里 || GitEE·点这里 一.Spring框架 1.框架简介 Spring是一个开源框架,框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 ...

  10. 【已解决】前端到后端400错误(The server cannot or will not process the request due to...)

    看到400错误,一般是请求无效.出现该异常一般有三种情况: 第一种情况: 前端提交的内容在后端一般都用String类型来接收,用Date类型接收会报错. 第二种情况: 在提交表单的时候,填写的数据类型 ...