Debian系统Jenkins集群搭建
导读:Debian 上搭建 Jenkins 集群 一 架构与准备 架构选型:采用主从(Controller/Agent)模式,主节点负责调度与界面,从节点执行构建;生产建议分离主从,主节点不跑构建任务。 节点规划:至少准备2 台 Debian...
Debian 上搭建 Jenkins 集群
一 架构与准备
- 架构选型:采用主从(Controller/Agent)模式,主节点负责调度与界面,从节点执行构建;生产建议分离主从,主节点不跑构建任务。
- 节点规划:至少准备2 台 Debian 服务器(建议 4 核/8GB 起,生产可 8 核/16GB+),并规划共享或持久化存储用于备份与恢复。
- 端口与连通:开放主节点 TCP 8080(Web 访问)与 TCP 50000(Agent 入站);确保主从间网络可达(云上注意安全组/防火墙)。
- 基础软件:安装 Java 11 或 17(推荐 OpenJDK),并准备 Docker(可选,便于快速扩展 Agent)。
二 安装与初始化主节点
- 安装 Java(任选其一):
- OpenJDK 11:
sudo apt update & & sudo apt install -y openjdk-11-jdk - OpenJDK 17:
sudo apt install -y openjdk-17-jre
- OpenJDK 11:
- 添加 Jenkins APT 源(Debian 12 推荐“signed-by”方式):
curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo tee /usr/share/keyrings/jenkins-keyring.asc > /dev/nullecho "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 jenkinssudo systemctl enable --now jenkins- 查看初始管理员密码:
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
- 防火墙放行:
sudo ufw allow 8080/tcpsudo ufw allow 50000/tcpsudo ufw reload
- 首次访问:打开 http://< 主节点IP> :8080,完成解锁与插件安装。
三 添加与管理从节点
- 方式 A(推荐)JNLP 代理连接
- 在主节点:Manage Jenkins → Manage Nodes and Clouds → New Node,填写节点名,设置远程工作目录(如 /var/jenkins),标签(如 linux docker),用法选择“只允许运行绑定到这台机器的作业”。
- 启动方式选择 Launch agent via Java Web Start,保存后会生成 Agent 连接命令与Secret。
- 在从节点:安装 Java,创建 jenkins 用户,切换到该用户,下载 agent.jar,执行命令(将 URL、Secret、工作目录替换为实际值):
java -jar agent.jar -url http://< master> :8080/ -secret < secret> -name < agent-name> -workDir "/var/jenkins"
- 观察主节点节点列表,状态变为 Online 即成功。
- 方式 B SSH 启动代理(可选)
- 主从均创建 jenkins 用户,配置 SSH 免密登录(master → agent),在主节点添加 SSH 凭据,在节点配置中选择 Launch agents via SSH,指定主机、凭据与工作目录,保存并启动。
四 高可用与扩展
- 快速扩展 Agent(Docker)
- 运行临时 Agent(将 替换为实际地址):
docker run -d --name jenkins-agent \ -v /var/run/docker.sock:/var/run/docker.sock \ -e JENKINS_URL=http://< master-ip> :8080 \ -e JENKINS_AGENT_NAME=agent-01 \ jenkins/agent:latest
- 在 Web 界面添加节点时选择 Launch agent via Java Web Start,使用页面生成的 Secret 启动即可。
- 运行临时 Agent(将 替换为实际地址):
- 主节点高可用(Controller HA)
- 开源版常用做法:部署 2 台主节点 + 共享存储(如 NFS) + 负载均衡(HAProxy/Nginx)。两台主节点挂载同一 JENKINS_HOME,通过 VIP/域名对外;Nginx/HAProxy 配置 健康检查与故障切换,实现主备或轮询。
- 故障切换与维护:任一主机异常时,流量自动切至备用主;配置变更可在备用主上访问 http://:8080/reload 热加载,无需重启。
五 安全与运维要点
- 安全加固:在 Manage Jenkins → Security 启用安全,禁用匿名访问,创建管理员与项目权限;凭据使用 Credentials 管理,避免明文。
- 插件与更新:在 Manage Plugins 安装常用插件(如 Pipeline、Git、Docker、Kubernetes CLI、Credentials Binding);可更换 Update Site 为国内镜像(如清华源)加速安装。
- 备份与恢复:定期备份 $JENKINS_HOME(含 jobs/、config.xml、secrets/ 等),变更前后及时备份;主从/HA 架构下确保共享存储与备份策略一致。
- 监控与调优:关注 节点健康、构建队列、磁盘/内存;根据负载调整 JVM 堆大小与并发构建数,清理陈旧工作空间与构建历史,保持插件版本一致。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Debian系统Jenkins集群搭建
本文地址: https://pptw.com/jishu/787291.html
