温馨提示×

如何备份centos的jenkins数据

小樊
39
2026-10-03 08:25:37
栏目: 智能运维

在 CentOS 上备份 Jenkins 数据,核心就是备份 Jenkins 的主目录(JENKINS_HOME)以及相关配置。下面给你一套实用、可操作的备份方案。


一、确认 Jenkins 数据位置

默认情况下:

/var/lib/jenkins

可以通过环境变量确认:

systemctl show jenkins | grep Environment
# 或
cat /etc/sysconfig/jenkins | grep JENKINS_HOME

二、需要备份的关键内容

✅ 必须备份

  • config.xml(Jenkins 全局配置)
  • jobs/(所有任务配置)
  • users/(用户和权限)
  • credentials.xml(凭据)
  • secrets/(密钥,非常重要)
  • plugins/(已安装插件,可选但推荐)
  • nodes/(节点配置)

❌ 可忽略

  • workspace/(构建工作区,体积大,可重建)
  • logs/
  • cache/

三、标准备份步骤(推荐)

1️⃣ 停止 Jenkins(最安全)

systemctl stop jenkins

如果允许短暂停机,强烈建议停止

2️⃣ 使用 tar 打包备份

cd /var/lib
tar czvf jenkins-backup-$(date +%F).tar.gz \
  --exclude=jenkins/workspace \
  --exclude=jenkins/cache \
  jenkins

3️⃣ 启动 Jenkins

systemctl start jenkins

四、不停机备份(生产环境可用)

如果不能停机:

tar czvf jenkins-backup-$(date +%F).tar.gz \
  --exclude=jenkins/workspace \
  --exclude=jenkins/cache \
  /var/lib/jenkins

✅ Jenkins 文件是“追加写”,tar 备份通常是安全的
⚠ 极端情况下正在写入的任务可能不完整(影响很小)


五、使用 Jenkins 官方插件(推荐)

ThinBackup 插件(最省心)

  1. Jenkins → Manage Jenkins → Plugins
  2. 安装 ThinBackup
  3. 配置:
    • Backup directory:/data/jenkins-backup
    • 备份频率:每天凌晨
    • 排除 workspace
  4. 手动执行一次 Backup Now

✅ 支持增量
✅ 支持自动清理旧备份


六、备份到远程(重要)

示例:scp 到备份机

scp jenkins-backup-2026-01-21.tar.gz backup@backup-server:/backup/jenkins/

或 rsync:

rsync -avz /var/lib/jenkins backup@backup-server:/backup/

七、恢复 Jenkins 数据

systemctl stop jenkins
rm -rf /var/lib/jenkins
tar xzvf jenkins-backup-2026-01-21.tar.gz -C /var/lib
chown -R jenkins:jenkins /var/lib/jenkins
systemctl start jenkins

八、最佳实践建议

✅ 每天自动备份
✅ 保留 7~30 天
✅ 异地备份
✅ 定期做恢复演练


如果你愿意,我可以:

  • 帮你写 systemd + cron 自动备份脚本
  • 给你一个 生产级 Jenkins 备份方案
  • 针对 Docker / K8s Jenkins 给专门方案

你现在是 物理机 / 虚拟机 / Docker 部署?

0 踩