jenkins配置slave节点 构建项目并执行操作
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的
如何设置才能让出来呢?
1:打开"系统管理"——"Configure Global Security"
2:TCP port JNLP agents 配置成"随机",点击"Agent protocols",打勾开启"Java Web Start Agent Protocol3"
3:检查Plugin Manager中"Enable Slave"需要打勾

jenkins配置slave节点 构建项目并执行操作的更多相关文章
- jenkins配置slave节点 windows
1.在slave机器上,访问已安装的jenkins站点,如图,选择新建节点 配置节点 2.打开新建节点,如图,点击launch按钮下载slave-agent.jnlp文件,点击slave.jar下载该 ...
- jenkins中slave节点连接的两种常用方式
我们在使用jenkins的时候,一般来说肯定是有slave节点的,本来网上也有好多关于jenkins节点配置的教程,我也就不写了.简单说明一下:任务一般是在slave上面运行的.当然不是讲master ...
- Jenkins2.138配置slave节点时,启动方法只有两个选项
Jenkins2.138配置slave节点时,启动方法只有两个选项,并没有通过javaweb代理启动这个选项 解决办法 全局安全配置->代理->选择随机选取
- jenkins配置基于角色的项目权限管理设置步骤
jenkins配置基于角色的项目权限管理设置步骤 本文链接:https://blog.csdn.net/russ44/article/details/52276222 由于jenkins默认的权限管理 ...
- Jenkins进阶-Slave 节点的配置(11)
Jenkins的主节点无法满足当前的发布需求,所以我们需要增加一个从节点,我们是本着节约的模式,所以主从节点均需要有任务来进行构建: 1.系统管理->管理节点: 2.添加从节点,管理节点-> ...
- 配置Jenkins的slave节点的详细步骤适合windows等其他平台(转)
@ 新建一个slave节点在Jenkins服务器上 1,进入Jenkins的主界面,进入“Manage Jenkins” 页面: 2,点击如下图中的“Manage Nodes”: 3,进入页面后点 ...
- 配置Jenkins的slave节点的详细步骤适合windows等其他平台
@ 新建一个slave节点在Jenkins服务器上 1,进入Jenkins的主界面,进入"Manage Jenkins" 页面: 2,点击如下图中的"Manage N ...
- jenkins集群节点构建maven(几乎是坑最多的)
业务量变大时,单台的jenkins进行自动化构建部署,就显得没那么灵活,jenkins的集群并非像web服务器.mysql集群那样,jenkins的集群无需在额外的主机安装jenkins,但是用于ja ...
- 【我的Android进阶之旅】Jenkins挂载slave节点,增强分布式编译的效率
由于公司的Jenkins任务越来越多,而且所有的Android Jenkins任务都在同一台服务器上进行编译,而且该服务器配置Jenkins任务最多3个任务同时运行,所以有时候大家一起编译的时候,只能 ...
随机推荐
- WPF 动画:同为控件不同命 - 简书
原文:WPF 动画:同为控件不同命 - 简书 1. 及格与优秀 读大学的时候,有一门课的作业是用 PPT 展示. 但是我们很多同学都把 PPT 当做 Word 来用,就单纯地往里面堆文字. 大家都单纯 ...
- Java线程和多线程(十三)——Callable,Future,FutureTask
在Java多线程之中,Callable和Future的使用时非常广泛的.在之前的文章中,我们了解了关于Java线程池基础的一些内容,知道如何提交Runnable的任务.但是,Runnable的任务是无 ...
- RHCSA-day1
1. 破解密码 开机 e 进入编辑模式 linux16 /boot/.............................en_US.UTF_8 这行末尾插入 rd.break (空格) ctrl ...
- 解决WCF传输的数据量过大问题
今天写了个WCF接口,然后自测通过,和别人联调时报 远程服务器返回错误: (413) Request Entity Too Large 错误!记得以前写的时候也出现过这个错误,大致解决办 ...
- 学习HTML 第五节.简单交互 加个按钮
学习HTML 第五节.简单交互 也许你和我一样,对页面排版的兴趣小于网页交互,那么我们就先略过一些章节,直接先学一下简单交互. 前面点击图片打开链接的网址,已经是最简单的交互方式了,复杂的方式则需要用 ...
- 【CentOS】安装Docker教程
前提条件 Docker 运行在 CentOS 7 上,要求系统为64位.系统内核版本为 3.10 以上. Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位 ...
- adb shell top 命令详解
[?25l[0m[H[J 当前系统时间 Tasks: 552 total, 1 running, 510 sleeping, 0 stopped, 0 zombie 任务(进程) 系统现在共有552个 ...
- 减少Java垃圾的产生,降低内存使用量
1.尽量少使用静态的变量,因为它会一直占用内存, 2.尽量少使用String字符串去做拼接,相加.因为String是定长的每次相加都会产生新的临时对象,生成垃圾对象,尽量使用StringBuffer, ...
- mysql5.5 升级到 5.7 的坑
1.大概思路,docker 新启一个mysql5.7 端口映射到3307 2. 导出5.5 的.sql文件,导入5.7中 3.测试通过后,可将5.5关闭.5.7端口改回3306 GRANT ALL P ...
- 写一个脚本批量转换项目中GB2312编码的文件为UTF-8编码
#!/bin/bash convert_file() { for file in `find .` do if [[ -f $file ]] then if [[ ${file##*.} == lua ...