先说:原本想通过SSH来进行两个主机之间的master-slave节点配置,在网上查了大量的教程实践,最终没有成功(过段时间,对Jenkins比较熟悉再来配置吧)。于是换了种方法,如下。

主机A 10.103.87.210 作为Jenkins服务器master主节点;

主机B 10.103.87.101 作为slave 从节点,无需安装Jenkins,只需要编译环境即可;

两台主机都是windows10

接下来的步骤会说明在哪台主机上操作。

目录

1 进入Manage JenkinsàManage Nodes and Clouds,新建节点 (主机A)

2 节点配置(主机A)

 3 继续配置节点(在主机A上操作)

4 建立主从节点的连接

4.1 保存节点配置步骤之后,回到如下界面(在主机A上操作)

4.2 去主机B上配置

5 新建任务与任务配置(将任务指定到节点上)

5.1 新建任务

 5.2 任务配置

6 构建build任务(主机A)

7 可能遇到的问题:


1 进入Manage JenkinsàManage Nodes and Clouds,新建节点 (主机A)

jenkins 节点指定java版本 jenkins配置从节点_Jenkins

jenkins 节点指定java版本 jenkins配置从节点_java_02

jenkins 节点指定java版本 jenkins配置从节点_jenkins_03

2 节点配置(主机A)

由于我之前10.103.87.101这台主机作为节点已经配置成功,所以重新取名为slave3-10.103.87.101以示区分。

jenkins 节点指定java版本 jenkins配置从节点_jar_04

(在主机B上操作)远程工作目录需要现在主机B从节点上某个目录下新建一个文件夹,如下:

 

jenkins 节点指定java版本 jenkins配置从节点_java_05

3 继续配置节点(在主机A上操作)

 

jenkins 节点指定java版本 jenkins配置从节点_java_06

 

jenkins 节点指定java版本 jenkins配置从节点_java_07

4 建立主从节点的连接

4.1 保存节点配置步骤之后,回到如下界面(在主机A上操作)

 

jenkins 节点指定java版本 jenkins配置从节点_java_08

可看到刚刚建立的slave3-10.103.87.101节点是断开连接的,点击该节点,进入如下界面:

 

jenkins 节点指定java版本 jenkins配置从节点_jenkins_09

上图中的命令,接下来会在主机B从节点上要用到;

点击 agent.jar , 浏览器会弹出下载框,将这个文件下载下来,并放到主机B的某个文件夹下,如:

 

jenkins 节点指定java版本 jenkins配置从节点_Jenkins_10

4.2 去主机B上配置

主机B上 win+R,输入cmd,进入终端

然后cd到agent.jar文件所在目录

jenkins 节点指定java版本 jenkins配置从节点_java_11

 输入命令,然后回车

curl -sO http://10.103.87.210:8080/jnlpJars/agent.jar 

继续输入命令:
java -jar agent.jar -jnlpUrl http://10.103.87.210:8080/manage/computer/slave3%2D10 %2E103%2E87%2E101/jenkins-agent.jnlp -workDir "H:\Unittec\Code\C\JenkinsWorkSpace"

jenkins 节点指定java版本 jenkins配置从节点_java_12

再回到主机A,可以看出,从节点slave3-10.103.87.101已经连接成功,在线状态

jenkins 节点指定java版本 jenkins配置从节点_jenkins_13

上述建立主从节点连接中的可能遇到的问题,请见文末!

5 新建任务与任务配置(将任务指定到节点上)

5.1 新建任务

jenkins 节点指定java版本 jenkins配置从节点_jenkins 节点指定java版本_14

5.2 任务配置

 

jenkins 节点指定java版本 jenkins配置从节点_Jenkins_15

jenkins 节点指定java版本 jenkins配置从节点_java_16

jenkins 节点指定java版本 jenkins配置从节点_jar_17

 

jenkins 节点指定java版本 jenkins配置从节点_Jenkins_18

 

jenkins 节点指定java版本 jenkins配置从节点_jenkins 节点指定java版本_19

jenkins 节点指定java版本 jenkins配置从节点_jenkins_20

6 构建build任务(主机A)

点击下图三角形,开始构建,然后可看出,任务myVC3slave在从节点slave3-10.103.87.101下运行的。

jenkins 节点指定java版本 jenkins配置从节点_java_21

回到主机B远程工作目录下,可看到该目录下多了remoting和workspace两个文件夹,

jenkins 节点指定java版本 jenkins配置从节点_java_22

其中:

Workspace存放的是从svn上拉取下来的源码;

Remoting 参考这个:Jenkins Remoting

jenkins 节点指定java版本 jenkins配置从节点_jenkins_20

https://www.jenkins.io/zh/projects/remoting/

7 可能遇到的问题:

(1) Error: A JNI error has occurred, please check your installation and try again

可能是JDK版本太低,装更高版本的JDK,下载地址如下:

Java Downloads | Oracle 中国

jenkins 节点指定java版本 jenkins配置从节点_jenkins_20

https://www.oracle.com/cn/java/technologies/downloads/#jdk20-windows

jenkins 节点指定java版本 jenkins配置从节点_jar_25

(2)jenkins 命令行中启动节点连接失败的方法

jenkins 节点指定java版本 jenkins配置从节点_jenkins_20