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-keygen

    全部按Enter使用默认值。

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

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

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

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

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

在jenkins上配置从节点

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

    这里写图片描述

  2. 点击【新建节点】

    这里写图片描述

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

    这里写图片描述

  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”策略,所以,这里我们需要手动验证一下从节点的身份。

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

    这里写图片描述

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

    这里写图片描述

    点击【Launch agent】:

    这里写图片描述

附文1:填写SSH认证信息

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

    这里写图片描述

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

    这里写图片描述

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

  3. 选择刚刚创建的认证

    这里写图片描述

参考文档

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

猜你喜欢

转载自blog.csdn.net/ruangong1203/article/details/78687450
今日推荐