实践环境

Jenkins 2.304

jdk-8u131-linux-x64.rpm

centos-release-7-9.2009.1.el7.centos.x86_64

操作步骤

安装JDK

在预新建结点机上安装JDK,并配置好相关环境变量(过程略)

新建结点

如下,访问Dashboard >> 系统管理 >> 节点管理 >> 新建结点(New Node),打开页面中,正确填写 结点名称(例中把名称设置为IP地址),勾选”固定节点(Permanent Agent)“,点击 确定 按钮,提交

配置结点

配置好后,保存,启动结点即可。

结点配置说明

Number of executors

执行器数量,即该节点支持的最大并发构建数。建议配置成和结点逻辑CPU数一样

代理节点(非 master 节点)必须至少拥有一个执行器。如需暂时阻止其执行构建,请使用其页面右上方的临时断开此节点按钮。

对于 master 节点,设置执行器的数目为零将会阻止在其上执行构建

工作目录

代理节点需要为Jenkins提供一个专门的目录。可以在这里配置该目录在节点机上的本地路径,最好是绝对路径,比如 /var/jenkins or c:\jenkins

如果使用相对路径,比如 ./jenkins-agent,该路径相对于由launch方法提供的工作目录

  • 针对由Jenkins控制启动代理进程的启动器,比如SSH,当前工作目录都是通常是一致的,比如用户主目录。
  • 对于不由Jenkins控制启动的代理进程,比如通过命令行启动的内置代理, 当前工作目录可能因启动器而异。使用相对路径可能会引发问题。

注意:建议如果无特殊情况,配置为用户主目录。如果SSH连接使用的用户,无权限访问该工作目录时,会导致Jenkins无法拷贝必要文件,报类似如下错误:

java.io.IOException: Could not copy remoting.jar into '/root/jenkins' on agent

说明:错误提示中的root/jenkins为配置的工作目录

标签

标签用来对多节点分组,标记之间用空格分隔.例如refression java6将会把一个节点标记上regressionjava6.

举例来说,如果你有多个Windows系统的构建节点并且你的Job也需要在Windows系统上运行,那么你可以配置所有的Windows系统节点都标记为windows, 然后限制Job只能在label为windows的机器上执行,这样的话你的Job就不会运行在除了Windows节点以外的其它节点之上了.

用法

控制Jenkins如何在这台机器上安排构建.

  • 尽可能的使用这个节点

    这是默认和常用的设置。 在这种模式下,Jenkins会尽可能的使用这个节点。任何时候如果一个构建能使用这个节点构建,那么Jenkins就会使用它.

  • 只允许运行绑定到这台机器的Job

    这种模式下,Jenkins只会构建哪些分配到这台机器的Job。

环境变量

此处定义的环境变量将可用于该代理执行的每次构建,并将覆盖与“系统管理>>系统配置>>全局配置”定义的环境变量任何同名环境变量。

LInux上变量使用语法:$NAME${NAME}, WIndows上变量使用语法:%NAME%,这些变量可以在Jenkins Job配置中使用,也可以在由构建启动的进程中使用。

Jenkins还支持一种特殊的语法BASE+EXTRA,该语法允许在这里添加多个键值对,这些键值对将被添加到现有的环境变量中。

如下,如果你有一台PATH=/usr/bin的机器,你可以在这里定义一个键为PATH+LOCAL_BIN和值为/usr/LOCAL/bin的环境变量来添加到标准PATH中。这将导致PATH=/usr/local/bin:/usr/bin在该节点在执行构建期间被导出,同时PATH+LOCAL_BIN=/usr/local/bin也会被导出。

根据环境变量名称(即上述配置的“”键”)中的“EXTRA”部分的字母顺序,在“BASE”变量前面加上多个条目。

注意:如果如果该键值为空或仅为空白,则不会将其添加到环境中,也不会覆盖或重置可能已存在的同名环境变量(例如,系统定义的变量)。

Jenkins 添加Linux固定代理节点的更多相关文章

  1. jenkins添加类ubuntu/centos节点报错

    前言:在jenkins添加ubuntu节点,发现启动代理报错 以下是报错: [SSH] Checking java version of /usr/java/latest/bin/java Could ...

  2. Jenkins添加代理节点

    新建linux节点 新建节点 配置远程工作目录和登录方式SSH 如果没有密码需要手动添加(需要在对应的slave节点存在的用户) 保存即可. 验证节点 新建任务 New Item 选择要运行的节点(这 ...

  3. WIN版的Jenkins Master加入LINUX的SLAVE节点,并作C++程序的集成交付

    这次深撸了一下JENKINS的配置,不敢说完全通了. 但对于整个体系,有了更新认识. 将LINUX作为SLAVE节点加入WIN的JENKINS里,网上有很多教程,依作即可. 在将相关任务分配给这个节点 ...

  4. node项目自动化部署--基于Jenkins,Docker,Github(2)配置节点

    上一篇文章中准备工作已经完成的差不多了 这一篇主要讲解 Jenkins 上面的相关配置 为了让代码部署到所有的子节点上 所以我们首先需要在 Jenkins 中添加我们希望代码部署到的节点 配置节点 首 ...

  5. Jenkins 为Jenkins添加Windows Slave远程执行python项目脚本

    为Jenkins添加Windows Slave远程执行python项目脚本   by:授客 QQ:1033553122 测试环境 JAVA JDK 1.7.0_13 (jdk-7u13-windows ...

  6. 持续集成高级篇之Jenkins windows/linux混合集群搭建(二)

    系列目录 前面我们说过,要使用ssh方式来配置windows从节点,如果采用ssh方式,则windows和linux配置从节点几乎没有区别,目前发现的惟一的区别在于windows从节点上目录要设置在c ...

  7. day65:Linux:nginx代理&nginx负载均衡

    目录 1.nginx代理 2.nginx代理与配置 3.nginx负载均衡调度多web节点(静态页面) 4.nginx负载均衡调度多应用节点(blog) 5.nginx_proxy + web应用节点 ...

  8. [转] Jenkins实战演练之Windows系统节点管理

    [前提] 通过<Jenkins实战演练之Windows服务器快速搭建>(http://my.oschina.net/iware/blog /191818)和<Jenkins实战演练之 ...

  9. 向CDH5集群中添加新的主机节点

    向CDH5集群中添加新的主机节点 步骤一:首先得在新的主机环境中安装JDK,关闭防火墙.修改selinux.NTP时钟与主机同步.修改hosts.与主机配置ssh免密码登录.保证安装好了perl和py ...

  10. Android和Linux下设备节点的创建笔记

    1. Linux kernel创建的/dev/下的设备节点是不对的, 其实是kernel仅负责在/sys/(基于内存的虚拟文件系统)创建一大堆下目录和文件,而真正的设备节点是在用户空间程序创建的,应该 ...

随机推荐

  1. 【asp.net】滑块验证码(分享一个从github上下载的源码)

    思路: 1. 准备好10张或20张不同规格的图片,按规格分类到不同文件夹,每个文件夹的图片从1开始顺序递增命名,为了随机选择图片.   2.前端提交规格比如200*300,根据规格选择原图,并初始化 ...

  2. shell脚本的调试

    参数: -n :读一遍脚本中的命令但不执行,用于检查脚本中的语法错误 -v :一边执行脚本,一边将执行过的脚本命令打印到标准错误输出 -x :提供跟踪执行信息,将执行的每一条命令和结果依次打印出来 使 ...

  3. Vue cli使用Element UI

    当前的测试环境如下: ---- 新版的@vue/cli ---- Vue2.x版本 第一步:安装Element UI npm i element-ui -S 第二步:引入Element UI 在mai ...

  4. docker 监控数据整合

    安装docker #开启内核转发 echo net.ipv4.ip_forward=1 >>/etc/sysctl.conf sysctl -p wget -O /etc/yum.repo ...

  5. 使用vscode编辑c语言

    在 Visual Studio Code (VSCode) 中配置 C 语言环境 步骤指南: 一,前期准备(安装扩展,软件包) 安装 C/C++ 扩展 打开 VSCode. 点击左侧边栏的扩展按钮(或 ...

  6. react生命周期比较常用的几个

    import React, { Component } from 'react' // 只有在类组件中才有生命周期 export default class App extends Component ...

  7. webpack 路径别名与导入后缀省略

    // 解析模块的规则 resolve: { // 配置解析模块路径别名:优点简写路径,缺点路径没有提示 alias: { // 定义一个@变量,可在import引入时使用 '@': path.reso ...

  8. Java8中LocalDateTime与时间戳timestamp的互相转换及ChronoUnit工具类

    Java8中LocalDateTime与时间戳timestamp的互相转换及ChronoUnit工具类import java.time.*;import java.time.format.DateTi ...

  9. 关于 "= default" 和 "= delete" 函数

    在 C++ 11 中,"= default" 和 "= delete" 函数使我们能够显示指定成员函数是否自动生成. 其中,"= delete&quo ...

  10. 在Xcode编写我们的quick help

    程序环境 Xcode 13.2.1 "写代码要经常写注释."虽然很多人不以为然,但是在使用Xcode的时候,我们在写注释的时候稍微注意一下格式的话,Xcode会给我们带来额外的正反 ...