Jenkins管理静态节点

Jenkins搭建完成后一般只有一个master节点,此节点主要用于管理Jenkins配置,如果再在master节点上跑一系列的Job,未免有点太勉强,并且如果出现资源紧缺的现象,会影响到整个Jenkins的使用,所有一般我们会添加slave(agent)节点,使master节点专注于管理、构建,slave节点进行具体Job的运行。

Jenkins增加slave节点分为静态和动态两种,静态方式就是增加一个固定的节点,这个节点会一直在Jenkins中,动态的目前有docker和k8s等方式,本节主要介绍静态增加节点,动态方式下节介绍。

静态增加节点的方式

静态增加agent节点主要有以下几种方式:

  1. Launch agent via SSH:通过ssh方式增加节点,此方式需要以下几步:

    • 节点机器必须有java环境
    • ssh用户名+密码方式或者用户名+秘钥方式连接
  2. Java Web方式启动代理:这种方式,新增好Jenkins节点后,会出现一条加入命令,在目标机执行命令即可。使用此方式前提:
    • 目标机有Java环境
    • 提前下载好agent.jar这个包
  3. Launch agent via execution of command on the master:通过在master节点执行某些命令或者脚本来启动agent节点,一般当master可以免密操作另外一台机器时使用

增加节点示例

Java Web方式启动代理

  1. 系统管理—>节点管理—>新建节点

  2. 主要设置能同时运行的任务数,以及agent启动方式,远程工作的家目录等

  3. 保存后,agent是一个未连接的状态,需要点击agent的名字,然后根据提示配置agent端

  4. 使用java启动agent进程

  5. 登录agent机器,下载agent.jar包,启动进程即可(可以后台启动)

    # wget http://10.85.142.151:8080/jnlpJars/agent.jar
    # java -jar agent.jar -jnlpUrl http://10.85.142.151:8080/computer/javaweb/jenkins-agent.jnlp -secret @secret-file -workDir "/home/jenkins"

Launch agent via SSH方式启动代理

  1. 先添加ssh凭据,可以使用账号密码的形式,也可以使用私钥连接,看实际情况

  2. 创建完成之后,添加agent节点,选择SSH方式

    要选择一个主机秘钥验证策略,选择know_hosts文件方式即可,然后要在jenkins主机的存储目录下创建.ssh目录,保存known_hosts文件,不然会报错找不到.ssh/known_hosts文件。

  3. ssh可以连接到目标机器,agent即可正常使用

此两种方式比较灵活,推荐使用,也完全可以把命令放到容器中启动,以docker方式运行。

devops-3:Jenkins增加静态节点的更多相关文章

  1. AWS DevOps – 配合Jenkins和CodeDeploy实现代码自动化部署

    AWS DevOps – 配合Jenkins和CodeDeploy实现代码自动化部署 Amazon ElastiCache 连接至 Redis 节点 通过 AWS Command Line Inter ...

  2. 【我的Android进阶之旅】Jenkins挂载slave节点,增强分布式编译的效率

    由于公司的Jenkins任务越来越多,而且所有的Android Jenkins任务都在同一台服务器上进行编译,而且该服务器配置Jenkins任务最多3个任务同时运行,所以有时候大家一起编译的时候,只能 ...

  3. Jenkins 进阶篇 - 节点配置

    当我们使用 Jenkins 构建的项目达到一定规模后,一个 Jenkins 服务可能承受不了负载,会导致很多的构建任务堆积,严重的话还会拖垮这台服务器,导致上面的服务无法使用.例如我们公司目前在 Je ...

  4. [转]Jenkins使用 管理节点

    现在我们已经搭建好了基本的Jenkins环境,在这一集里,我们说一说如何管理节点. 进入“系统管理”中的“管理节点”. 创建Windos系统的奴隶节点 先创建一台安装了Win7系统的虚拟机,作为Jen ...

  5. Memcached 笔记与总结(7)增加虚拟节点

    仅仅把 Memcached 服务器集群地址通过一致性哈希转映射在圆环上,可能会出现数据不能均匀地分配给各台 Memcached 服务器. 解决方案是引入虚拟节点,就是把每个映射在圆环上的服务器地址(物 ...

  6. ligerui_ligerTree_005_动态增加“树”节点

    动态添加ligerTree节点:效果图: 源码地址:http://download.csdn.net/detail/poiuy1991719/8571255 <%@ page language= ...

  7. 修复jquery.treeview的增加子节点的方法的bug

    1.修复理由 在一个android项目中用到了treeview控件(本来自己通过android的原生api实现了一个http://www.cnblogs.com/Mr-Nobody/p/3527688 ...

  8. 快速增加controller节点

    # controller1节点部署成功后,再添加controller节点,复制配置文件并修改即可openstack pike 部署 目录汇总 http://www.cnblogs.com/elvi/p ...

  9. jenkins中slave节点连接的两种常用方式

    我们在使用jenkins的时候,一般来说肯定是有slave节点的,本来网上也有好多关于jenkins节点配置的教程,我也就不写了.简单说明一下:任务一般是在slave上面运行的.当然不是讲master ...

  10. Hadoop概念学习系列之Hadoop集群动态增加新节点或删除已有某节点及复制策略导向 (四十三)

    不多说,直接上干货! hadoop-2.6.0动态添加新节点 https://blog.csdn.net/baidu_25820069/article/details/52225216 Hadoop集 ...

随机推荐

  1. Java反射与Fastjson的危险反序列化

    Preface 在前文中,我们介绍了 Java 的基础语法和特性和 fastjson 的基础用法,本文我们将深入学习fastjson的危险反序列化以及预期相关的 Java 概念. 什么是Java反射? ...

  2. Spring手动获取bean的四种方式

    一.实现BeanFactoryPostProcessor接口 @Component public class SpringUtil implements BeanFactoryPostProcesso ...

  3. 树莓派4B-PCA9685驱动舵机

    前言 不知道你们有没有遇到过这么一种情况,直接用树莓派的引脚输出PWM控制舵机,舵机是会出现抖动的.就算代码进行一定的时延迟优化还是会有影响的. 现在我们可以使用PCA9685这个模块去驱动舵机. P ...

  4. SpringBoot自定义全局异常返回页面

    返回自定义异常界面,需要引入thymeleaf依赖(非必须,如果是简单的html界面则不用) <dependency> <groupId>org.springframework ...

  5. Linux-shell编程入门基础

    目录 前言 Shell编程 bash特性 shell作用域 变量 环境变量 $特殊变量 $特殊状态变量 $特殊符号(很重要) 其他内置shell命令 shell语法的子串截取 统计 指令执行时间 练习 ...

  6. 使用PHP实现字符串的上标和下标,比如:M²和Log₂FC

    要在PHP中实现字符串的上标和下标效果,并直接在命令行或网页中正确显示,你可以分别使用Unicode转义序列或HTML实体来表示上标(UPER)和下标(SUB)字符.对于打印到网页的情况,可以使用HT ...

  7. 【JavaScript高级03】执行上下文和执行上下文栈

    1,函数提升和变量提升 编写以下代码: var a = 3 function fn () { console.log(a) var a = 4 } fn() 上面的JavaScript代码执行结果为一 ...

  8. JMeter 基于脚本实现代码共享

    需求描述 需求是这样的:执行某次压测任务时,压测涉及的前端接口,要求携带一个userName请求头,该请求头值为实际用户名经过DES加密后,再采用Base64加密后的值,为此,编写了一段加密代码,发送 ...

  9. JMeter While循环控制器应用之遍历获取文件参数

    While循环控制器应用之遍历获取文件参数 by: 授客 QQ:1033553122 测试环境 JMeter-5.4.1 应用 实现单线程在单次迭代内遍历获取文件参数 说明:上图仅给出关键配置信息 注 ...

  10. CF941

    A link 其实,只要有第一次,那么下次随意找一个队列里有的数加\(k-1\)个进去,加上队列里那一个删掉\(k\)个,到最后一次肯定是剩\(k-1\)个. 没有第一次,就是\(n\). 点击查看代 ...