欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Jenkins主从节点配置

程序员文章站 2024-03-20 21:36:04
...

jenkins支持主从模式,这将会把构建任务分发到多个从节点去执行,这样就可以支撑起多个项目的大量构建任务,同时,你可以提供多种环境(如:开发环境、生产环境)来对同一个项目进行测试和构建。想要进一步了解jenkins主从模式的话可以参考官方文档

Jenkins主从节点配置

本文档将针对配置 ubuntu 从节点进行图文介绍,希望可以减少读者试错浪费的时间。本文使用的是 jenkins 2.46.3 版本。

从节点准备工作

一个主机要作为jenkins的从节点需要满足两个条件:

  • 该主机需要装有java运行环境
  • 该主机允许jenkins master 服务器免密登录

设 jenkins master 为 A , 从节点 为 B 。我们进行如下准备工作:

  1. SSH登录 B , 安装 java 环境

    sudo apt-get update
    sudo apt-get install openjdk-8-jdk
    java -version
  2. SSH登录A,如果还没有SSH**,则先生成SSH**,执行:

    ssh-******

    全部按Enter使用默认值。

    有了**之后,将**传送到远程主机,执行:

    ssh-copy-id <user-name>@<remote-host>

    这样,我下次登录<remote-host>上的<user-name>账户时就不需要密码了,可以试一下,执行:

    ssh <user-name>@<remote-host>

    了解更多ssh远程登录的内容可以参考 SSH原理与运用(一):远程登录

在jenkins上配置从节点

  1. 打开jenkins,点击【系统管理】,选择【管理节点】

    Jenkins主从节点配置

  2. 点击【新建节点】

    Jenkins主从节点配置

  3. 输入【节点名称】,选中【permanent agent】,点击【OK】

    Jenkins主从节点配置

  4. 配置节点,按照下表所示输入,加粗文字注意一下:

    配置项 配置
    名称 填节点名称
    描述 节点描述
    of executors 不改动。并发数量
    远程工作目录 填写从节点上jenkins agent的工作目录,推荐只用绝对路径,如/home/<user-name>/jenkins-agent注意jenkins要有该目录的读写权限
    标签 不改动。jenkins可以通过标签指定一组从服务器运行某个构建任务
    用法 不改动。可以指定什么情况下使用该从节点,可以有“尽可能使用该节点”和“只有任务指定了使用该节点时,才用该节点运行”两种选择
    启动方法 选择”launch slave agents via SSH”
    主机 填写从服务器的ip或域名
    Credentials 填写SSH认证信息,见附文1
    Host Key Verification Strategy 选择 Manually Trusted Key Verification Strategy,这会在完成配置后,第一次连接从节点时要求我们手动确认当前连接的从节点的身份。说明一下,Host Key 验证是用来防止中间人攻击
    Require manual verification of initial connection 选中
    Availability 不改动。可用性
    高级——java路径 填写从主机上的java的路径,可以使用which java 查看。如果这里不填,jenkins会扫描一些特定路径,如果扫描不到java,就会报错,所以建议填写
    Environment variables 勾选上,并填写运行构建任务所需要的环境变量。建议填上JAVA_HOME,免得jenkins运行构建任务时找不到java。

    填完之后,点击【保存】

  5. 手动验证从节点身份

    由于上面我们使用了“Manually Trusted Key Verification Strategy”策略,所以,这里我们需要手动验证一下从节点的身份。

    点击我们刚刚新建的从节点:

    Jenkins主从节点配置

    点击【Trust SSH Host Key】,点击【是】:

    Jenkins主从节点配置

    点击【Launch agent】:

    Jenkins主从节点配置

附文1:填写SSH认证信息

  1. 点击【add】,选择【jenkins】

    Jenkins主从节点配置

  2. 参照下图输入,然后点【add】

    Jenkins主从节点配置

    千万注意:要填私钥位置,不是公钥喔!

  3. 选择刚刚创建的认证

    Jenkins主从节点配置

参考文档

  1. Failed known_hosts verification for SSH agent
  2. Host Key Verification for SSH Agents