Jenkins配置agent
一. 通信协议
为了master和agent能够正常通信,连接的建立必须是双向的。
- SSH: master通过标准的SSH协议连接slave。
- Java Web Start: Java 应用在agent 主机上启动,Master和agent通过TCP建立连接。 这种方法往往是在agnet在防火墙内部,master不能发起连接的情况下使用。
- Windows service: 这种方法是注册 agnet在远端主机上作为一个服务。该方法设置比较繁琐,且需要图形接口的支持。
二. 设置 agent
关联slaves到master的不同方式:
- 静态和动态对比:静态添加slave比较简单。但缺点就是假如需要更多或者更少的slave nodes的话,我们还需要手工修改。一个最好的方式就是动态的添加。
- 指定和通用目的:就是对某个agent去做某些特定的功能或者一个agent可以构建所有的任务。
三. 常 用的四种配置方法
- Permanent agents
- Permanent Docker agents
- Jenkins Swarm agents
- Dynamically provisioned Docker agents
1. permanent agents
依次点击【Manage Jenkins】--【Manage Nodes】—【New Node】,如下图
持久agent的缺点就是需要针对不同项目类型维护多个slave 类型。解决方案如下图所示:
2. Permanent Docker agents
这个解决方案的理想方法是永久的添加常规目的的slaves. 每个slave都有相同的配置。
这种方法就是在构建时在管道中指定需要的docker image.
pipeline {
agent {
docker {
image 'openjdk:8-jdk-alpine'
}
}
...
}
解决方案如下图所示:
3. Jenkins Swarm agents
以上的添加在往往需要扩容大量的salve 主机时比较麻烦。Jenkins swarm允许去动态的添加slave(不需要在jenkins master中配置它们)
(1)在Jenkins中安装【Self-Organizing Swarm Plug-in Modules】插件
。

(2)运行Jenkins Swarm slave应用在要扮演Jenkins slave的所有主机上。 使用swarm-client.jar应用。下载地址:https://wiki.jenkins-ci.org/display/JENKINS/Swarm+Plugin.
$ java -jar swarm-client.jar -master <jenkins_master_url> -username <jenkins_master_user> -password <jenkins_master_password> -name jenkins-swarm-slave-1
(3)在成功运行命令后,应该出现如下图所示:
4. 通过Docker agent动态的提供。
其它的办法就是在每次构建开始时,jenkins去动态的创建一个新的agent.根据构建工作的数量动态的调整slave的数量。
配置步骤:
(1)安装Docker插件

(2)打开【Manage Jenkins】。
(3)点击【Configure System】链接。
(4)点击添加新的云,选择Docker.

(5)添加Docker 模板

Jenkins配置agent的更多相关文章
- Jenkins 配置 SpringBoot 自动构建部署
服务器版本 Linux version 3.10.0-957.12.1.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8 ...
- 使用jenkins配置.net mvc网站进行持续集成二
上一篇使用jenkins配置.net mvc网站进行持续集成一只是简单介绍了jenkins构建站点到本地服务器,这一篇,就来讲解如何部署站点到指定的服务器上面. 1.IIS远程发布配置 1.在服务器管 ...
- 使用Gradle构建构建一个Java Web工程及持续集成环境Jenkins配置
安装Eclipse插件——Buildship 什么是Buildship? Buildship能方便我们通过Eclipse IDE创建和导入Gradle工程,同时还能执行Gradle任务. Eclips ...
- jenkins配置.net mvc网站
jenkins配置.net mvc网站 上一篇使用jenkins配置.net mvc网站进行持续集成一只是简单介绍了jenkins构建站点到本地服务器,这一篇,就来讲解如何部署站点到指定的服务器上面. ...
- Jenkins配置和使用
之前整理了Jenkins的下载和安装过程,有需要的可以参考我的博客,地址: http://www.cnblogs.com/luchangyou/p/5981884.html 接下来整理一下Jenk ...
- jenkins配置自动发送邮件,抄送
1.安装插件.系统管理-安装插件:可选插件:搜索Email Extension 2.设置全局变量.系统管理-系统设置:a.Jenkins Location 设置发送方邮件--- b.Extended ...
- Jenkins 配置邮件通知步骤
Jenkins 配置邮件通知前言 可以在Jenkins 中配置邮件通知,比如在构建失败时发送邮件通知项目组来及时修复问题. Jenkins 邮件通知功能的插件主要包括: Mailer Plugin ( ...
- 【jenkins】jenkins+maven+gitlab+testng,jenkins配置
电脑版本:windows10企业版 jenkins配置: 1.general配置,这里的配置比较简单,基本默认就可以了 2.源码管理 2.1填写git地址,从你的gitlib项目里去找.不会的自行百度 ...
- 环境部署(八):jenkins配置邮件通知
完成基于jenkins的持续集成部署后,任务构建执行完成,测试结果需要通知到相关人员.这篇博客,介绍如何在jenkins中配置邮件通知的方法... 一.安装邮件插件 由于Jenkins自带的邮件功能比 ...
随机推荐
- web项目中解决post乱码和get乱码的方法
前提复习编码问题产生的原因: 1. 什么是URL编码. URL编码是一种浏览器用来打包表单输入的格式,浏览器从表单中获取所有的name和其对应的value,将他们以name/value编码方式作为U ...
- cmd编译java程序出现:找不到或无法加载主类的原因以及解决办法 以及 给java的main方法传递args参数
原因: 1.java源程序中没有主类main方法. 2.java源程序中包含有eclipse等IDE工具生成的package包. 解决办法(对应以上的原因): 1.运行含有main的类 2.将java ...
- Struts2版本更新报错:>>> ActionContextCleanUp <<< is deprecated! Please use the new filters!
因低版本Struts2存在漏洞,更新为较新的版本.启动时,报如下警告信息: ************************************************************** ...
- idea中tomcat乱码问题解决
在idea中经常遇到jsp的乱码问题,原因是编码不是UTF-8的问题,这次来彻底解决idea的编码问题 首先设置idea编辑器的编码: File-Setting设置如下 然后配置tomcat的编码问题 ...
- mysql跨节点join——federated引擎
一. 什么是federated引擎 mysql中的federated类似于oracle中的dblink. federated是一个专门针对远程数据库的实现,一般情况下在本地数据库中建表会在数据库目录中 ...
- 大聊Python----装饰器
什么是装饰器? 装饰器其实和函数没啥区别,都是用def去定义的,其本质就是函数,而功能就是装饰其他的函数,说白了就是为其他函数提供附加功能 装饰器有什么作用? 比如你是一个公司的员工,你所写的程序里有 ...
- 老版本ubuntu更新源地址以及sources.list的配置方法 转
转自(http://blog.csdn.net/snaking616/article/details/52966634) 1.国内可用的更新源地址: (1)中科大地址 http://mirrors.u ...
- C# 加密解密以及sha256不可逆加密案例
class Program { static void Main(string[] args) { string aa = "身份证"; string bb = "key ...
- HTML标签学习之路-001
1.html的注释 <!--这里是注释内容--> <!--代表注释内容的开始 -->代表注释内容结束 注释部分,不会被浏览器输出,只是作为代码的说明,供开发者查阅 2.HTML ...
- spring-mybatis.xml配置
1.自动扫描 <context:component-scan base-package="com.javen" /> 2.引入配置文件 <bean id=&quo ...