温馨提示×

如何在CentOS上配置Jenkins节点

小樊
49
2025-09-18 01:42:28
栏目: 智能运维

在CentOS上配置Jenkins节点的详细步骤

1. 环境准备

  • 系统要求:CentOS 7及以上版本;内存≥4GB(生产环境建议8GB以上);磁盘空间≥10GB可用空间。
  • Java安装:Jenkins 2.357+需要Java 11,执行以下命令安装OpenJDK 11:
    sudo yum update -y
    sudo yum install java-11-openjdk-devel -y
    java -version  # 验证安装(需显示Java 11版本)
    
  • 网络连通性:确保Jenkins主节点与目标从节点之间网络互通(可通过ping命令测试)。

2. 安装Jenkins主节点

若尚未安装Jenkins主节点,需先完成主节点部署:

  • 添加Jenkins仓库
    sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
    sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
    
  • 安装Jenkins
    sudo yum install jenkins -y
    
  • 启动服务
    sudo systemctl start jenkins
    sudo systemctl enable jenkins  # 设置开机自启
    
  • 访问Web界面:浏览器输入http://<主节点IP>:8080,按提示完成初始设置(如解锁密码、管理员密码)。

3. 配置Jenkins从节点

从节点是执行实际构建任务的机器,需通过主节点进行管理。以下是两种常用连接方式:

方式一:通过SSH连接(推荐,安全且自动化)
  1. 主节点操作

    • 进入Jenkins管理界面:Manage JenkinsManage Nodes and CloudsNew Node
    • 输入节点名称(如centos-agent-01),选择Permanent Agent,点击OK
    • 配置节点参数:
      • # of executors:并发构建数(根据机器CPU核心数调整,如4核建议≤5)。
      • Remote FS root:从节点的工作目录(如/home/jenkins/agent,需提前创建并赋予权限:mkdir -p /home/jenkins/agent && chown -R jenkins:jenkins /home/jenkins/agent)。
      • Labels:节点标签(如linuxjava,用于任务匹配,多个标签用空格分隔)。
      • Launch method:选择Launch agents via SSH
      • Credentials:点击Add,选择SSH Username with private key,输入从节点的用户名(如jenkins)和私钥(需提前在从节点生成:ssh-keygen -t rsa,并将公钥id_rsa.pub复制到主节点的~/.ssh/authorized_keys中)。
      • Host:从节点的IP地址或域名。
      • Port:SSH端口(默认22,若修改需同步)。
    • 点击Save保存配置。
  2. 从节点操作

    • 确保从节点已安装Java(参考步骤2),并开放SSH端口(firewall-cmd --add-service=ssh --permanent && firewall-cmd --reload)。
    • 主节点会自动尝试连接从节点,若连接成功,从节点状态将显示为Idle
方式二:通过Java Web Start(JNLP)连接(适用于桌面环境)
  1. 主节点操作

    • 进入Manage Nodes and CloudsNew Node,输入节点名称,选择Permanent Agent,点击OK
    • 配置节点参数:
      • # of executorsRemote FS rootLabels:同SSH方式。
      • Launch method:选择Launch agent via Java Web Start
    • 点击Save,页面会生成一个JNLP链接(如http://<主节点IP>:8080/computer/<节点名称>/slave-agent.jnlp)。
  2. 从节点操作

    • 在从节点上安装Java(参考步骤2),并确保浏览器支持Java插件。
    • 打开JNLP链接,下载并运行slave-agent.jnlp文件(需输入从节点的Jenkins账号密码)。
    • 若弹出“允许应用程序接收来自此发布者的信息”的提示,点击允许,代理将自动连接主节点。

4. 验证节点配置

  • 主节点查看:进入Manage JenkinsManage Nodes and Clouds,检查从节点状态是否为Idle(表示连接成功)。
  • 任务分配测试
    1. 创建一个简单任务(如Hello World),在Configure页面的Restrict where this project can be run中输入从节点的标签(如linux)。
    2. 触发构建(点击Build Now),进入Build History,点击构建编号,查看Console Output,若输出中包含从节点的hostname(如Running on centos-agent-01),则说明配置成功。

5. 高级配置(可选)

  • 环境变量设置:在从节点配置页面的Node PropertiesEnvironment variables中添加自定义变量(如JAVA_HOME=/usr/lib/jvm/java-11-openjdk),供任务使用。
  • 资源限制:通过Resource limits设置从节点的最大内存、CPU使用率,避免任务过度占用资源。
  • 持久化配置:若从节点重启,需确保Jenkins代理自动启动(可将启动命令添加到/etc/rc.local或使用systemd创建服务)。

通过以上步骤,即可在CentOS上完成Jenkins节点的配置,实现分布式构建,提升持续集成/持续交付的效率。

0