当jenkins在用起来的时候,我们很难保证它不会出故障,除了故障怎么快速恢复呢?作为运维,备份极其重要。但jenkins本身不提供备份的功能,所以这里就需要借助jenkins自带的插件来进行备份恢复,jenkins自带的插件有thinbackup和periodic backup。下面进行分别介绍
一、通过插件ThinBackup进行备份恢复
1.以管理员的身份登录jenkins,点击系统管理—>插件管理—->可选插件—>(过滤里面输入ThinBackup进行查找)
2.勾选ThinBackup—>点击直接安装
安装thinbackup.png
等待安装完成。
3.点击系统管理—>选择ThinBackup插件
选择插件.png
查看thinbackup.png可以看到有三个选项:
Backup Now: 手动立即备份
Restore: 恢复备份
Settings: 备份参数的设置
4.创建备份目录
创建备份目录,并对目录递归属主属组权限
mkdir /backup
chown -R jenkins.jenkins /backup
5.设置定时备份,周一至周五的凌晨2点进行备份(可排除不需要备份的文件)
6.手动备份
手动备份.png
手动备份完后,在服务器上的备份目录中就可以找到备份的文件
[root@localhost~]# cd /backup
[root@localhost backup]# ls
FULL-2020-03-03_16-58
[root@localhost backup]#
查看备份了有哪些文件
[root@localhost backup] cd FULL-2020-03-03_16-58/
[root@localhost FULL-2020-03-03_16-58] ls
config.xml
credentials.xml
github-plugin-configuration.xml
hudson.maven.MavenModuleSet.xml
hudson.model.UpdateCenter.xml
hudson.plugins.build_timeout.operations.BuildStepOperation.xml
hudson.plugins.emailext.ExtendedEmailPublisher.xml
hudson.plugins.git.GitSCM.xml
hudson.plugins.git.GitTool.xml
hudson.plugins.gradle.Gradle.xml
hudson.plugins.timestamper.TimestamperConfig.xml
hudson.scm.SubversionSCM.xml
hudson.tasks.Ant.xml
hudson.tasks.Mailer.xml
hudson.tasks.Maven.xml
7.恢复
选择备份文件.png
备份文件是以日期+时间节点组成的文件名,我们恢复什么时间段的,点击进行恢复。
二、通过Periodic Backup进行恢复
备份除了上面提到的插件还有一个插件是Periodic Backup,安装Periodic Backup和安装thinbackup一样,安装完成后可以在系统管理菜单下面有一个Periodic Backup Manager菜单
1.打开Periodic Backup Manager,第一次打开是没有任何东西的,需要我们自己去建立一个规则,点击Configure
配置.png配置项跟简单:
Temporary Directory: 临时目录
Backup schedule (cron): 进行备份cron的表达式,填写完成后点击Validate cron syntax进行验证
Maximum backups in location: 最大位置备份,保留多少个备份文件
Store no older than (days): 保留的时间
File Management Strategy: 备份策略
ConfigOnly: 只备份配置文件
FullBackup: 进行全量备份,可以通过Excludes list中填入Ant风格表达式,排除不希望备份的文件,多个表达式使用分号分隔
Storage Strategy: 存储策略,就是是否需要进行压缩存储
Backup Location: 备份的位置,都是本地目录
网友评论