1、新建与配置结点

【系统管理】-> 【管理结点】-> 【新建结点】

2、配置slave

说明:

Name:

定义slave的唯一名称标识,可以是任意字符串,通常设置为slave主机名、ip地址

描述:

关于slave的描述,通常用于描述与其它salve的区别

# of executors:

来自官方描述:这个值控制着Jenkins并发构建的数量. 因此这个值会影响Jenkins系统的负载压力. 使用处理器个数作为其值会是比较好的选择。

增大这个值会使每个构建的运行时间更长,但是这能够增大整体的构建数量,因为当一个项目在等待I/O时它允许CPU去构建另一个项目。

设置这个值为0对于从Jenkins移除一个失效的从节点非常有用,并且不会丢失配置信息

远程工作目录:

指定slave的工作目录路径。最好设置为绝对路径,如“/var/jenkins”或“c:\jenkins”。这里填写的是相对于slave主机的路径,正常情况下,不必对master主机可见。

标签:

标记(又叫做标签),用来对多节点分组,标记之间用空格分隔.例如'refression java6'将会把一个节点标记上'regression'和'java6'。

举例来说,如果你有多个Windows系统的构建节点并且你的Job也需要在Windows系统上运行,那么你可以配置所有的Windows系统节点都标记为'windows', 然后把Job也标记为'windows'.这样的话你的Job就不会运行在除了Windows节点以外的其它节点之上了.

用法:

控制Jenkins如何在这台机器上安排构建.

1)尽可能的使用这个节点

这是默认和常用的设置. 在这种模式下,Jenkins会尽可能的使用这个节点.任何时候如果一个构建能使用这个节点构建,那么Jenkins就会使用它.

2)只允许运行绑定到这台机器的Job

这种模式下,Jenkins只会构建哪些分配到这台机器的Job. 这允许一个节点专门保留给某种类型的Job.例如,在Jenkins上连续的执行测试,你可以设置执行者数量为1,那么同一时间就只会有一个构建, 一个实行者不会阻止其它构建,其它构建会在另外的节点运行.

启动方法:

控制Jenkins怎么启动slave

1) Launch slave agents on Unix machines via SSH

通过SSH连接,发送命令来启动slave。需要提供可以登陆slave主机的帐号,可以不具备root权限。

2)Launch slave agents via Java Web Start

通过JNLP启动一个代理程序启动slave。这种情况下,启动是由slave初始化的,所以主机不一定要ip可达(比如隔着一层防火墙)[ The launch in this case is initiated by the slave, thus slaves need not be IP reachable from the master (e.g. behind the firewall.)]

3)Launch slave via execution of command on the Master

通融个从master上执行一个命令来启动启动slave。当master可以在salve上远程执行一个进程,比如通过ssh/rsh,可以使用这个。

4)Let Jenkins control this Windows slave as a Windows service

不推荐。往往问题多多

Availability:

控制jekins何时启动或停止slave。

1)Keep this slave on-line as much as possible

默认和常规设置。这种模式下,jenkins会尽量保持salve在线。如果不通过用户援助,启动slave, 如果slave不可获取,jenkins将周期性的尝试启动slave。Jenkins不会主动让slave 下线。

2)Take this slave on-line when in demand and off-line when idle

在这种情况下,jenkins可在没有用户援助的情况下启动slave,当遇到满足以下条件的不可执行任务时,jenkins将周期性的尝试启动slave:

>在队列中等待时间已达指定启动时间( startup demand period).

>可在slave上执行

slave将被下线,如果:

>slave上没有活动任务在执行

>slave处于空闲状态时间已达到指定的空闲时间(specified idle period)。

In demand delay:告诉Jenkins如果有Job需要在此节点构建,需要在任务队列等待多长时间才会进入任务状态进行构建

Idle delay:告诉Jenkins多少分钟内如果没有Job需要构建就离线

配置完后,查看Slave状态如下:

3、点击launch按钮,这时会让我们下载一个文件,下载到我们的slave节点的远程工作目录就可以了

然后双击slave-agent,出现connected说明连接成功

现在回到jenkins的管理节点页面,slave节点的❌已经没有了,说明连接成功

4、关联项目,然后运行看看是否成功了

进入job的配置页面,勾选Restrict where this project can be run,并且在Label Expression输入奴隶节点的标签名(一个标签有可能对应多台slave节点),也可以输入slave节点的名称

5、构建触发器

6、直接构建看看效果  java -version 检查java版本

构建成功了,slave节点也是ok的

 在做自动化测试的时候我们只需要将测试服务器配置为slave节点,配置好相应的job来监控开发job或者开发的代码是否有变动或者构建的动作,根据自己的情况执行测试项目的构建动作,从而实现持续集成
 
注意:如果jenkins的配置从节点中默认没有Launch agent via Java Web Start,该如何配置使用?

如何设置才能让出来呢?

1:打开"系统管理"——"Configure Global Security"

2:TCP port JNLP agents 配置成"随机",点击"Agent protocols",打勾开启"Java Web Start Agent Protocol3"

3:检查Plugin Manager中"Enable Slave"需要打勾

 

jenkins配置slave节点 构建项目并执行操作的更多相关文章

  1. jenkins配置slave节点 windows

    1.在slave机器上,访问已安装的jenkins站点,如图,选择新建节点 配置节点 2.打开新建节点,如图,点击launch按钮下载slave-agent.jnlp文件,点击slave.jar下载该 ...

  2. jenkins中slave节点连接的两种常用方式

    我们在使用jenkins的时候,一般来说肯定是有slave节点的,本来网上也有好多关于jenkins节点配置的教程,我也就不写了.简单说明一下:任务一般是在slave上面运行的.当然不是讲master ...

  3. Jenkins2.138配置slave节点时,启动方法只有两个选项

    Jenkins2.138配置slave节点时,启动方法只有两个选项,并没有通过javaweb代理启动这个选项 解决办法 全局安全配置->代理->选择随机选取

  4. jenkins配置基于角色的项目权限管理设置步骤

    jenkins配置基于角色的项目权限管理设置步骤 本文链接:https://blog.csdn.net/russ44/article/details/52276222 由于jenkins默认的权限管理 ...

  5. Jenkins进阶-Slave 节点的配置(11)

    Jenkins的主节点无法满足当前的发布需求,所以我们需要增加一个从节点,我们是本着节约的模式,所以主从节点均需要有任务来进行构建: 1.系统管理->管理节点: 2.添加从节点,管理节点-> ...

  6. 配置Jenkins的slave节点的详细步骤适合windows等其他平台(转)

    @  新建一个slave节点在Jenkins服务器上 1,进入Jenkins的主界面,进入“Manage Jenkins” 页面: 2,点击如下图中的“Manage  Nodes”: 3,进入页面后点 ...

  7. 配置Jenkins的slave节点的详细步骤适合windows等其他平台

    @  新建一个slave节点在Jenkins服务器上 1,进入Jenkins的主界面,进入"Manage Jenkins" 页面: 2,点击如下图中的"Manage  N ...

  8. jenkins集群节点构建maven(几乎是坑最多的)

    业务量变大时,单台的jenkins进行自动化构建部署,就显得没那么灵活,jenkins的集群并非像web服务器.mysql集群那样,jenkins的集群无需在额外的主机安装jenkins,但是用于ja ...

  9. 【我的Android进阶之旅】Jenkins挂载slave节点,增强分布式编译的效率

    由于公司的Jenkins任务越来越多,而且所有的Android Jenkins任务都在同一台服务器上进行编译,而且该服务器配置Jenkins任务最多3个任务同时运行,所以有时候大家一起编译的时候,只能 ...

随机推荐

  1. 20155203 2016-2017-2 《Java程序设计》第2周学习总结

    20155203 2016-2017-2 <Java程序设计>第2周学习总结 教材学习内容总结 第三章的主要内容是使用Java语言设计程序的基础语法的学习 java语言中的计算:如果两个数 ...

  2. 20155218 《Java程序设计》实验五(网络编程与安全)实验报告

    20155218 <Java程序设计>实验五(网络编程与安全)实验报告 一.实验内容及步骤 (一) 编写MyBC.java实现中缀表达式转后缀表达式的功能 编写MyDC.java实现从上面 ...

  3. 【转载】GitHub详解

    原文:GitHub详解 GitHub详解 GitHub 是一个共享虚拟主机服务,用于存放使用Git版本控制的软件代码和内容项目.它由GitHub公司(曾称Logical Awesome)的开发者Chr ...

  4. Android开发笔记——ListView模块、缓存及性能

    ListView是Android开发中最常用的组件之一.本文将重点说明如何正确使用ListView,以及使用过程中可能遇到的问题. ListView开发模块 图片缓存 可能遇到的问题 一.ListVi ...

  5. 【轮子狂魔】打造简易无配置的IoC

    如何指定Business Event和Command之间的关系? 既然是基于惯例优先原则,那么我们首先需要定义一个惯例: 1.调度事件和调度处理器之间是一对多关系(多对多的话,相信你看完了以后应该会知 ...

  6. 利用PreparedStatement预防SQL注入

    1.什么是sql注入 SQL 注入是用户利用某些系统没有对输入数据进行充分的检查,从而进行恶意破坏的行为. 例如登录用户名采用  ' or 1=1 or username=‘,后台数据查询语句就变成 ...

  7. c字符数组里的中文

    char *p ="你abc"; strlen(p); //6 utf-8编码中

  8. 剑指 Offer——和为 S 的两个数字

    1. 题目 2. 解答 由于数组是已经排好序的,我们可以定义两个指针,第一个指针指向第一个元素,第二个指针指向最后一个元素,然后求出这两个元素的和,与目标和进行比较.若小于目标和,第一个指针向前移动: ...

  9. java不用任何已有方法完全自写的去重法

    package aa; class InsertSort{ private long[] a; private int nElems; //构造方法 public InsertSort(int max ...

  10. php命名空间学习笔记。

    为什么要用命名空间? 在PHP中,命名空间用来解决在编写类库或应用程序时创建可重用的代码如类或函数时碰到的两类问题: 用户编写的代码 与  PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲 ...