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执行机来执行,后续的构建内容全部都是在此执行机上执行,因此该执行机必须具备执行此任务的能力,即执行机机器上必须有运行自动化脚本的环境

  

posted @ 2019-10-23 01:14  小公瑾  阅读(629)  评论(0编辑  收藏  举报