Ff8d5076eb2f2f2e6c6985de757ee8f4
Jenkins 多节点(Master/Slave)构建

一、前言

上一篇我们通过一些实例讲解了 Jenkins Pipeline,相信大家已经掌握了持续集成的主要流程。在实际项目中,我们可能会遇到需要在多平台构建的项目。如下图所示,该项目便是需要在 Mac 和 Windows 中执行构建。

本文主要内容也将围绕这一问题展开。

二、Master/Slave 架构

Master/Slave 相当于 Server 和 agent 的概念。Master 提供 web 接口让用户来管理 job 和 slave,job 可以运行在 master 本机或者被分配到 slave 上运行。一个 master 可以关联多个 slave 用来为不同的 job 或相同的 job 的不同配置来服务。

三、Jenkins 配置 Salve 节点

  • 注: 以下例子基于 Jenkins ver. 2.150.1

新增 Mac / Linux 节点

这里以 mac 为例

1、为 mac 打开远程登录

需要使用 ssh 方式启动节点,所以需要先开启

2、创建节点

Jenkins --> 系统管理 --> 管理节点 --> 新建节点

3、填写节点信息

  • Remote root directory 表示节点的工作目录(后续在节点执行的构建的工作目录)
  • Launch method 是启动方式,这里选择使用 SSH 方式
  • Host 填写节点的 IP 地址或者域名
  • Credentials 表示认证,点击Add创建一个并使用即可
    • Username:节点的用户名
    • Password:节点的登录密码
  • Host Key Verification Strategy:为了方便,这里选择 Non Verificating Verification Strategy 即可

4、连接

点击 Save 后,Jenkins 会自动连接上节点,并在工作目录中注入 remoting.jar 等文件

连接成功后,即可在 Jenkins 中看到节点

新增 Windows 节点

这里以 win7 为例

1、为 Windows节点安装 JDK

具体请参考 https://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html?qq-pf-to=pcqq.c2c

2、修改 Jenkins URL

Jenkins --> 系统管理 --> 系统设置 --> Jenkins URL
将 localhost 修改为 master 主节点的 ip 或者域名

3、创建节点

Jenkins --> 系统管理 --> 管理节点 --> 新建节点

4、填写节点信息

注:若是找不到通过 Java Web 启动代理,请选择新版本中的 Launch agent by connecting it to master

5、下载 slave-agent.jnlp


点击 Launch 图标,下载 slave-agent.jnlp

6、连接

将 slave-agent.jnlp 拷贝到 Windows节点
双击运行 slave-agent.jnlp

当 slave-agent.jnlp 启动完毕后,即可看到节点已连接

top Created with Sketch.