Jenkins数据备份

使用jenkins另一个必不可少的配置就是对jenkins的备份。Jenkins的所有的数据都是以文件的形式存放在`${JENKINS_HOME}`目录中。所以不管是迁移还是备份,只需要将`${JENKINS_HOME}`打包后在拷贝,然后将打包的文件解压到新的`${JENKINS_HOME}`目录就行了。备份jenkins的方法有很多种,本文就简单介绍一下常用的备份方法,使用ThinBackup插件。

在插件管理页面找到`ThinBackup`插件,安装即可(如果你不会安装,看一下第二篇的内容吧)。安装完以后,在`manage jenkins`界面会出现`ThinBackup`菜单项,点击进去后进入settings设置界面,进行备份设置。如下所示设置:

Jenkins数据备份

配置说明

**Backup directory**:

备份目录,用于存储备份的文件,如果指定的目录不存在,默认在进行备份之前会自动创建。

**Backup schedule for full backups**:

进行备份的计划任务,与linux下的crontab一样,其中上面的H,代表哈希,为了允许定期调度的任务在系统上产生均匀负载,应尽可能使用符号H(用于“散列”)。例如,如果多个job都设置使用`0 0 * * *`将导致负载大幅飙升。相比之下,使用H H * * *仍然会每天执行一次每个job,但不会同时执行,更好地使用有限的资源。

**Backup schedule for differential backups**:

进行差异化备份的计划任务,同上。

**Max number of backup sets**:

备份的最大数量。

**Files excluded from backup (regular expression)**:

不需要进行备份的文件的正则表达式。

**Wait until Jenkins/Hudson is idle to perform a backup**:

等待jenkins空闲多长时间后进行备份。

**Backup build results**:

如果启用此选项,还将备份构建结果,一般不建议勾选此选项。

**Backup ‘userContent‘ folder**:

备份`${jenkins_home}/userContent `目录下的文件。

**Backup next build number file**:

备份jenkins构建的build id文件。

**Backup plugins archives**:

备份插件。

**Clean up differential backups**:

完成备份以后清除所有的差异备份。

**Move old backups to ZIP files**:

如果选中此选项,则无论何时执行新的完整备份,所有旧备份集都将移至ZIP文件。每个ZIP文件将包含一个备份集,即一个完整备份和任何引用该备份文件的差异备份。文件名将标识包含备份的时间范围(即完整备份的时间戳和最新差异备份的时间戳)。

备份策略根据自己实际情况定义即可。

保存后回到`ThinBackup`界面,除了可以自动进行备份外,也可以通过手动备份,点击`Backup Now`按钮就会立即进行备份。如下按钮:

Jenkins数据备份

备份完后会在上面设定的备份目录下生成一个以`FULL-`开头,以当前时间(精确到分)为结尾的目录,该目录下就是默认所有的Jenkins配置。

当要使用备份文件进行恢复的时候,点击restore按钮,在跳转的界面中就会显示出该备份文件的备份时间,点击Restore即可。

相关推荐