温馨提示×

jenkins如何连centos节点

小樊
33
2026-08-30 19:17:22
栏目: 智能运维

在 Jenkins 中连接 CentOS 节点(Agent/Slave),常见做法是通过 SSH 连接。下面我按最常用、最稳妥的方式一步一步说明,适合初学者或生产环境。


一、环境准备(CentOS 节点)

1️⃣ 确认 CentOS 已安装 Java

Jenkins Agent 必须依赖 Java:

java -version

如果没有安装:

# CentOS 7
yum install -y java-1.8.0-openjdk

# CentOS 8 / Stream
dnf install -y java-17-openjdk

✅ 推荐 Java 11 或 17(与 Jenkins 版本匹配)


2️⃣ 创建 Jenkins 专用用户(推荐)

useradd jenkins
passwd jenkins

给 sudo 权限(可选):

echo "jenkins ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers

二、Jenkins Master 配置 CentOS 节点

1️⃣ 打开 Jenkins 节点管理

进入 Jenkins:

Jenkins → Manage Jenkins → Nodes

点击 New Node


2️⃣ 节点基本配置

配置项 说明
Node Name centos-node-1
Type ✅ Permanent Agent
Remote root directory /home/jenkins
Labels centos
Usage ❌ Use this node as much as possible
Launch method ✅ Launch agents via SSH

3️⃣ SSH 配置(重点)

✅ 方式一(推荐):用户名 + 密码

  • Host:CentOS IP
  • Credentials:
    • Kind:Username with password
    • Username:jenkins
    • Password:jenkins 用户密码
  • Host Key Verification Strategy:
    • Non verifying Verification Strategy
Host → 192.168.1.100
Credentials → jenkins/password

✅ 方式二(更安全):SSH Key

在 Jenkins Master 生成密钥
ssh-keygen -t rsa -b 4096
拷贝公钥到 CentOS
ssh-copy-id jenkins@centos_ip
Jenkins 中配置
  • Credentials:
    • Kind:SSH Username with private key
    • Username:jenkins
    • Private Key:粘贴 id_rsa

4️⃣ JVM 选项(可选)

-Xms256m -Xmx512m

三、启动并验证节点

1️⃣ 保存配置后自动连接

如果配置正确,你会看到:

Agent successfully connected and online

2️⃣ 手动测试 SSH

在 Jenkins Master 上:

ssh jenkins@centos_ip

四、在 Job 中使用 CentOS 节点

方式一:Label

在 Job 中设置:

Restrict where this project can be run
Label Expression: centos

方式二:指定节点名

centos-node-1

五、常见问题排查

❌ 节点一直 offline

排查顺序:

  1. CentOS 能否 SSH 登录
  2. Java 是否正确安装
  3. /home/jenkins 目录权限
  4. Jenkins 日志:
    Manage Jenkins → System Log
    

❌ Permission denied

chmod 700 /home/jenkins/.ssh
chmod 600 /home/jenkins/.ssh/authorized_keys
chown -R jenkins:jenkins /home/jenkins

六、是否必须用 SSH?(补充)

方式 适用场景
✅ SSH 最常用、推荐
JNLP 防火墙限制
Web Start 已废弃
Docker Agent 动态节点

七、总结(最简流程)

✅ CentOS 安装 Java
✅ 创建 jenkins 用户
✅ Jenkins → Nodes → New Node
✅ SSH 连接
✅ Job 绑定节点


如果你愿意,可以告诉我:

  • Jenkins 是 Docker / 宿主机 / Kubernetes 部署?
  • CentOS 版本(7 / 8 / Stream)
  • 是否在内网 / 云服务器

我可以给你 完全贴合你环境的配置方案

0