• Jenkins 添加Linux固定代理节点


    实践环境

    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)“,点击 确定 按钮,提交

    配置结点

    图2

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

    结点配置说明

    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也会被导出。

    图3

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

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

    作者:授客
    QQ:1033553122
    全国软件测试QQ交流群:7156436

    Git地址:https://gitee.com/ishouke
    友情提示:限于时间仓促,文中可能存在错误,欢迎指正、评论!
    作者五行缺钱,如果觉得文章对您有帮助,请扫描下边的二维码打赏作者,金额随意,您的支持将是我继续创作的源动力,打赏后如有任何疑问,请联系我!!!
               微信打赏                        支付宝打赏                  全国软件测试交流QQ群  
                  

  • 相关阅读:
    IOS小组件(8):App与Widget数据共享
    IOS小组件(7):小组件点击交互
    IOS小组件(6):小组件实现时钟按秒刷新
    IOS小组件(5):小组件刷新机制
    IOS小组件(4-2):创建可配置小组件(动态修改配置数据)
    IOS小组件(4-1):创建可配置小组件(静态配置数据)
    IOS小组件(3):SwiftUI开发小组件布局入门
    IOS小组件(2):小组件框架解析
    IOS小组件(1):概述
    python函数作用域
  • 原文地址:https://www.cnblogs.com/shouke/p/15203553.html
Copyright © 2020-2023  润新知