如何在 Ubuntu 上设置 Jenkins Master 和 Slave如何在 Ubuntu 上设置 Jenkins Master 和 Slave如何在 Ubuntu 上设置 Jenkins Master 和 Slave如何在 Ubuntu 上设置 Jenkins Master 和 Slave
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

如何在 Ubuntu 上设置 Jenkins Master 和 Slave

发表 admin at 2025年2月28日
类别
  • 未分类
标签

Jenkins 是一个从 Hudson 项目派生的自动化服务器。它支持许多 SCM(源代码控制管理)软件系统,包括 Git、SVN 和 Mercurial。 Jenkins 提供了数百个插件来自动化您的项目。 Jenkins 提供对主/从架构的支持,使其能够托管大量项目构建。

詹金斯“主/从”如何工作?

Jenkins主/从架构用于分布式构建环境,其中构建项目的工作负载被分布到多个代理节点,并且我们可以为每个构建使用不同的环境。

在 Jenkins 的“主/从”架构中,主服务器将自己表示为基本的 Jenkins 安装,并处理构建系统的所有任务。 Jenkins主节点将用于调度作业、监控从节点、向从节点调度构建、记录和表示构建结果以及直接执行构建作业。

Jenkins 从节点设置用于从主节点卸载构建项目,并且需要在主节点和从节点之间建立连接。 Jenkins从节点可以在Windows和Linux等各种操作系统上运行,并且无需在其上安装完整的Jenkins软件包。

本教程将教我们如何使用最新的 Ubuntu 版本设置 Jenkins 主从架构。我们将学习设置 Jenkins 主服务器并将其他 Ubuntu 节点添加为 Jenkins 从服务器。

先决条件

  • Ubuntu 服务器(Ubuntu 22.04 - Ubuntu 16.04)

    • 主控 - 10.0.15.10
    • 从属01 - 10.0.15.21
    • 从属02 - 10.0.15.22
  • 根权限

我们将要做什么?

  1. 安装詹金斯大师
  2. 配置 Jenkins 主凭证
  3. 配置从代理节点
  4. 添加新的从节点
  5. 准备从代理节点来执行构建
  6. 测试

第 1 步 - 安装 Jenkins Master

在本教程中,我们不会介绍基本的 Jenkins 安装。 HowtoForge 上的几篇文章介绍了 Jenkins 安装。

  • 在 Ubuntu 16.04 上安装 Jenkins
  • 在 Ubuntu 18.04 上安装 Jenkins
  • 在 Ubuntu 20.04 上安装 Jenkins
  • 在 Ubuntu 22.04 上安装 Jenkins
  • 在 CentOS 7 上安装 Jenkins

以下是我们安装了 Jenkins 的 Ubuntu 主服务器。

第 2 步 - 配置 Jenkins 主凭证

当你安装了主服务器 Jenkins 后,我们需要配置主服务器本身。默认情况下,启动 Jenkins 代理节点有多种方式,我们可以通过 SSH、Windows 管理帐户以及 Java Web Start (JNLP) 启动代理节点,根据您的环境设置和操作系统选择最佳方式。

对于本指南,我们将通过 ssh 启动代理节点,并且需要在主服务器上设置 Jenkins 凭据。

生成 SSH 密钥

我们将使用 ssh 密钥身份验证来设置代理节点,因此我们需要为 Jenkins 用户生成 ssh 密钥,然后使用“ssh-copy-id”手动将密钥上传到每个服务器节点。

在 Jenkins 主服务器上,登录 Jenkins 用户并生成 ssh 密钥。

su - jenkins
ssh-keygen

您将在“.ssh”目录中获得“id_rsa”私有密钥和“id_rsa.pub”公共密钥。

在 Jenkins 上设置凭据

打开 Jenkins 仪表板并单击左侧的“凭据”菜单。

然后单击“全局”域链接。

现在单击“添加凭据”。

现在选择身份验证方法。

  • 类型:带私钥的 SSH 用户名
  • 范围:全球
  • 用户名: 詹金斯
  • 私钥:直接输入并粘贴主服务器上Jenkins用户的“id_rsa”私钥。

单击“确定”。

并且使用 ssh auth key 方法的 Jenkins 凭证已创建。

第 3 步 - 设置从节点

现在我们将通过在这些服务器上安装 java 并创建一个新的 Jenkins 用户来设置从属节点服务器。

安装Java

安装“software-properties-common”软件包并添加 java PPA 存储库。

sudo apt install software-properties-common apt-transport-https -y
sudo add-apt-repository ppa:openjdk-r/ppa -y

现在使用下面的 apt 命令安装 java OpenJDK。

sudo apt install openjdk-8-jdk -y

安装完成后,查看安装的java版本。

java -version

您将在系统上安装 Java OpenJDK 1.8。

添加新的 Jenkins 用户

现在将“Jenkins”用户添加到所有代理节点。

运行以下命令。

useradd -m -s /bin/bash jenkins
passwd Jenkins

代理节点的“Jenkins”用户已创建。

将 SSH 密钥从 Master 复制到 Slave

接下来,我们必须将密钥“id_rsa.pub”从主服务器上传到从服务器节点。我们需要使用“ssh-copy-id”命令上传到每个服务器节点,如下所示。

ssh-copy-id [email 
ssh-copy-id [email 

输入 Jenkins 用户密码。

ssh 密钥“id_rsa.pub”已上传到所有代理节点。

第 4 步 - 添加新的从节点

在 Jenkins 仪表板上,单击“管理 Jenkins”菜单,然后单击“管理节点”。

单击“新节点”。

输入节点名称“slave01”,选择“永久代理”,然后单击“确定”。

现在输入节点信息详细信息。

  • 说明:slave01节点代理服务器
  • 远程根目录:/home/jenkins
  • 标签: 奴隶01
  • 启动方法:通过SSH启动从属代理,输入主机IP地址“10.0.15.21”,选择使用“Jenkins”凭证进行身份验证。

现在单击“保存”按钮并等待主服务器连接到所有代理节点并启动代理服务。

下面是主服务器连接到所有代理节点时的结果。

Jenkins从节点已添加到主服务器。

第 5 步 - 准备从属代理节点以执行构建

在此步骤中,我们将配置 Jenkins master 在从属代理节点上执行构建。

单击“管理 Jenkins”菜单,然后单击“配置系统”。

现在转到“从站设置”部分并定义您需要的所有内容,如下所示。

有关链接上“从站设置”的更多信息。

单击“保存”按钮,现在我们准备在从属代理节点上执行构建。

第 6 步 - 测试

现在我们要为 Jenkins 创建一个新的简单构建,并在机器人“slave01”和“slave02”代理节点上执行该构建。

在 Jenkins 仪表板上,单击“新建项目”菜单。

输入项目名称,选择自由式项目,然后单击“确定”。

在常规部分,输入职位描述并选中“限制此项目可以运行的位置”选项。

在“标签表达式”上,指定节点,例如“slave01”。

移至构建部分,选择“执行 shell”选项,键入如下命令。

top -b -n 1 | head -n 10 && hostname

单击“保存”按钮,您将被重定向到职位页面。

单击“立即构建”来构建项目,然后单击“构建历史记录”部分上的项目。

以下是我的结果。

在“slave01”代理节点上构建。

在“slave02”代理节点上构建。

Jenkins主/从架构以及分布式构建Jenkins的安装和配置已经成功完成。

参考

  • https://wiki.jenkins.io/
©2015-2025 Norria support@norria.com