Jenkins代理(Agent)用于实现分布式构建,将构建任务分发到多台机器执行,提升效率。以下是在CentOS上配置Jenkins代理的详细步骤:
jenkins
包、启动服务)。http://<master-ip>:8080
)。yum install -y java-11-openjdk-devel
安装,验证java -version
。centos-slave
),选择Permanent Agent(永久代理),点击OK。2
)。/home/jenkins/agent
,需提前创建)。linux
),方便后续流水线指定节点(如agent { label 'linux' }
)。Use this node as much as possible
(尽量使用此节点)。jenkins
),粘贴私钥(需提前在从节点生成:ssh-keygen -t rsa
,并将公钥id_rsa.pub
添加到主节点的~/.ssh/authorized_keys
中))。.jnlp
文件)。mkdir -p /home/jenkins/agent
)。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
文件。java -jar slave-agent.jnlp -jnlpUrl http://<master-ip>:8080/computer/<node-name>/slave-agent.jnlp -secret <secret-key>
(<secret-key>
可从主节点节点配置页面复制)。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 &
。linux
)。/home/jenkins/agent
目录下生成构建文件),则说明代理配置成功。systemctl start sshd; systemctl enable sshd
)。jenkins
用户需有远程工作目录的读写权限(chown -R jenkins:jenkins /home/jenkins/agent
)。systemd
创建jenkins-agent.service
),确保节点重启后自动启动代理。