centos

如何在centos上配置jenkins代理

小樊
56
2025-09-16 01:06:17
栏目: 智能运维

在CentOS上配置Jenkins代理(分布式构建代理)

Jenkins代理(Agent)用于实现分布式构建,将构建任务分发到多台机器执行,提升效率。以下是在CentOS上配置Jenkins代理的详细步骤:

1. 准备工作

2. 在Jenkins主节点上创建从节点

  1. 登录Jenkins Web界面,点击左侧Manage Jenkins(管理Jenkins)。
  2. 选择Manage Nodes and Clouds(管理节点和云)。
  3. 点击New Node(新建节点),输入节点名称(如centos-slave),选择Permanent Agent(永久代理),点击OK
  4. 配置节点信息:
    • Number of executors(执行器数量):决定节点同时能运行的构建任务数(如2)。
    • Remote root directory(远程工作目录):从节点上存放构建文件的目录(如/home/jenkins/agent,需提前创建)。
    • Labels(标签):给节点打标签(如linux),方便后续流水线指定节点(如agent { label 'linux' })。
    • Usage(用途):选择Use this node as much as possible(尽量使用此节点)。
  5. 配置Launch method(启动方法):
    • 推荐选择Launch agents via SSH(通过SSH启动),点击Add添加SSH凭据(选择“SSH Username with private key”,输入从节点的用户名(如jenkins),粘贴私钥(需提前在从节点生成:ssh-keygen -t rsa,并将公钥id_rsa.pub添加到主节点的~/.ssh/authorized_keys中))。
    • 或选择Launch agent via Java Web Start(通过Java Web Start启动,适用于桌面环境,从节点需安装Java并运行下载的.jnlp文件)。
  6. 点击Save保存节点配置。

3. 在从节点上启动Jenkins代理

  1. 登录从节点,创建远程工作目录(如mkdir -p /home/jenkins/agent)。
  2. 通过SSH连接到主节点,获取代理程序链接:
    • 访问http://<master-ip>:8080/computer/<node-name>/slave-agent.jnlp(如http://192.168.1.100:8080/computer/centos-slave/slave-agent.jnlp),下载slave-agent.jnlp文件。
  3. 运行代理程序:
    • 方式1(命令行):在从节点终端执行java -jar slave-agent.jnlp -jnlpUrl http://<master-ip>:8080/computer/<node-name>/slave-agent.jnlp -secret <secret-key><secret-key>可从主节点节点配置页面复制)。
    • 方式2(后台运行):使用nohup命令保持代理运行:nohup java -jar slave-agent.jnlp -jnlpUrl http://<master-ip>:8080/computer/<node-name>/slave-agent.jnlp -secret <secret-key> > /dev/null 2>&1 &
  4. 验证代理状态:回到Jenkins主节点的节点管理页面,查看从节点状态是否为Idle(空闲),表示连接成功。

4. 验证代理配置

  1. 在Jenkins主节点创建一个简单任务(如“Hello World”),配置Restrict where this project can be run(限制运行节点),输入从节点的标签(如linux)。
  2. 运行任务,查看构建日志,若显示“Running on centos-slave”(或在从节点的/home/jenkins/agent目录下生成构建文件),则说明代理配置成功。

注意事项

0
看了该问题的人还看了