前言
- jenkins除了支持在本机上进行项目构建,还可以将构建任务分发到其他远程服务器上去执行,可以实现在不同平台和架构的机器上来完成项目的自动化构建任务,也能减轻jenkins服务器的压力。本文章就主要介绍下此流程。
准备工作
- 准备两台机器,一台Jenkins服务器,ip为192.168.206.137。 一台普通机器A,ip为192.168.206.134。如何搭建jenkins服务器可参考我的上篇文章。
- 虚拟机A java 安装命令
- 查找 : yum search java|grep jdk
- 选择一个安装 : yum install java-1.8.0-openjdk
Jenkins配置
- jenkins节点管理这块,目前只有一个节点,就是我的jenkins服务器
- 开始配置新节点,选择系统管理
- 然后选择全局安全设置
- 代理这里指定一个端口,然后保存。
- 然后在系统管理中选择节点管理
- 新建一个节点
- 起一个节点名称,然后创建
- 依次填写以下信息,这里的信息就是刚才准备的虚拟机A的信息,可以在虚拟机A的root目录下创建一个jenkins目录。
- 保存之后,可以看到这里已经有一个新的节点了。但这个适合显示节点不在线
- 点开可以看到以下信息,然后先点击agent.jar把这个包下载下来
- 然后把这个agent.jar拷贝到虚拟机A的/root/jenkins目录下,然后在虚拟机A的/root/jenkins目录下执行上面那个命令
-
java -jar agent.jar -jnlpUrl http://192.168.206.137:8080/computer/centos7/jenkins-agent.jnlp -secret 0d6908ae6652429557b05ed7e0060b5a5d0dea0a3dd6b0b159752599f5d72469 -workDir "/root/jenkins"
- 看到以下提示信息,说明连接成功了
- 再返回节点列表,可以看到节点centos7已经是在线状态了
- 然后再在系统管理中选择插件管理
- 在可选插件这里搜索 Node and Label parameter,安装
实现远程构建
-
新建一个任务
-
这里选择Node
-
这里指定git仓库,选择分支
-
创建任务成功后,可以看到这里多了一个Build with Patameters参数
-
这里可以看到,就可以选不同节点了。我们选择centos7,点击开始构建
-
构建成功。我的jenkins服务器ip为192.168.206.137,从这里可以看到,代码已经拉取到了另一台机器 192.168.206.134上面了。
-
可以看到在虚拟机A上有成功拉取的代码了。
-
我们可以在虚拟机A上,实现代码的拉取,编译,打包及发布,减轻了jenkins服务器的压力。如果有需求,可以按照以上步骤添加更多的机器,把构建任务分发到不同的机器上去执行。