温馨提示×

Jenkins如何连Debian节点

小樊
49
2026-09-14 05:47:09
栏目: 智能运维

在 Jenkins 中连接 Debian 节点(Agent/Slave) 通常有两种常见方式:

  1. SSH 方式(推荐,最常用)
  2. JNLP / Java Web Start 方式

下面以 SSH 方式 为主,详细说明步骤。


一、准备工作(Debian 节点)

1. 安装 Java

Jenkins Agent 需要 Java 运行环境:

sudo apt update
sudo apt install -y openjdk-11-jdk

检查:

java -version

2. 创建 Jenkins 用户(可选但推荐)

sudo adduser jenkins

设置密码或配置 SSH Key(见下一步)。


3. 配置 SSH 登录

推荐用 SSH Key 登录(更安全):

在 Jenkins Master 上:

ssh-keygen

把公钥复制到 Debian 节点:

ssh-copy-id jenkins@debian-node-ip

测试:

ssh jenkins@debian-node-ip

二、Jenkins Master 配置节点

1. 打开 Jenkins

Manage Jenkins → Manage Nodes and Clouds → New Node

2. 节点配置

  • Node name: debian-agent
  • Type: Permanent Agent
  • 点击 OK

3. 节点参数示例

配置项 示例
Remote root directory /home/jenkins
Labels debian linux
Launch method Launch agents via SSH
Host Debian 节点 IP
Credentials 添加 SSH 用户名 + 私钥
Host Key Verification Non verifying(测试)或Known hosts

保存。


三、验证节点是否连接成功

  • 节点列表显示 Connected
  • 日志中无错误
  • 可执行测试 Job:
node('debian') {
    sh 'uname -a'
}

四、JNLP 方式(备选)

如果无法使用 SSH:

  1. Debian 节点执行:
java -jar agent.jar -url http://jenkins-url/ -secret xxx -name debian-agent
  1. Jenkins 节点类型选择: Launch agent by connecting it to the controller

⚠️ 不推荐生产环境使用。


五、常见问题

1. 连接失败

  • 检查 22 端口是否开放
  • 检查防火墙
  • 检查 Java 版本

2. Permission denied

  • 确认 ~/.ssh/authorized_keys 权限
chmod 600 ~/.ssh/authorized_keys

3. 节点离线

  • 查看节点日志
  • 确认 agent 进程未退出

如果你告诉我:

  • Jenkins 版本
  • Debian 版本
  • 使用 SSH 还是 JNLP

我可以给你更精确的步骤或示例配置。

0