Debian系统下Jenkins分布式构建实施指南
在开始配置前,需确保以下条件满足:
java -version
验证)。在所有节点上通过Debian包管理器安装Jenkins:
# 添加Jenkins官方仓库密钥和源
curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo tee /usr/share/keyrings/jenkins-keyring.asc > /dev/null
echo "deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] https://pkg.jenkins.io/debian-stable binary/" | sudo tee /etc/apt/sources.list.d/jenkins.list > /dev/null
# 更新软件包索引并安装Jenkins
sudo apt update
sudo apt install -y jenkins
# 启动Jenkins服务并设置开机自启
sudo systemctl start jenkins
sudo systemctl enable jenkins
# 查看初始管理员密码(用于首次登录)
sudo cat /var/lib/jenkins/secrets/initialadminpassword
访问http://<节点IP>:8080
,输入初始密码完成初始配置(如设置管理员账号、安装推荐插件)。
master
)的状态为“Idle”(空闲)。/etc/default/jenkins
文件,添加或修改以下内容:JENKINS_URL="http://<主节点IP>:8080"
sudo systemctl restart jenkins
生成JNLP启动文件:
slave1
),选择Permanent Agent,点击OK。/var/lib/jenkins
,需提前创建并赋权:sudo mkdir -p /var/lib/jenkins && sudo chown -R jenkins:jenkins /var/lib/jenkins
)。http://<主节点IP>:8080/computer/slave1/slave-agent.jnlp
)。启动工作节点:
java -jar agent.jar -jnlpUrl http://<主节点IP>:8080/computer/slave1/slave-agent.jnlp -secret <节点密钥> -workDir "/var/lib/jenkins"
(注:<节点密钥>
可在主节点节点配置页面的“Secret”字段获取)验证连接:
准备工作节点:
sudo useradd -m jenkins_slave
sudo passwd jenkins_slave
sudo systemctl start sshd
sudo systemctl enable sshd
配置主节点SSH密钥:
ssh-keygen -t rsa -b 4096
ssh-copy-id jenkins_slave@<工作节点IP>
添加SSH工作节点:
创建任务:
distributed-demo
),选择Freestyle project(或其他类型,如Pipeline),点击OK。配置任务:
linux
,需在工作节点配置中设置)或节点名称(如slave1
)。Execute shell
,输入echo "Running on $(hostname)"
)。保存并运行:
验证分布式构建:
/var/lib/jenkins
目录下,应能看到任务的构建产物(如日志文件、生成的安装包)。维护工作节点:
agent.jar
进程(ps -ef | grep agent.jar
,然后kill -9 <PID>
),重新运行启动命令。ubuntu
、docker
、windows
),便于任务按环境分配。