GITLAB使用了一段时间之后,你会想到需要备份与恢复。

GITLAB的备份与恢复所仰仗的命令是【gitlab-rake】。
关于该命令,它的信息如下:

可以看到,我当前的rake的版本是:【12.3.1】

英文中,rake的意思是:【靶子】

一、备份(omnibus)
command:
gitlab-rake gitlab:backup:create

如上,就备份完成了。

看看备份文件:

默认,备份文件会存到【/var/opt/gitlab/backups】

可以在GITLAB的配置中看到默认的备份文件的设置:

如上修改其中【gitlab_rails[‘backup_path’]】,就可以修改默认的备份位置。
注意:
对gitlab.rb修改后,需要reconfigure,才会真正生效:

如果需要放入计划任务(CRONTAB),需要加参数【CRON=1】

其中,【CRON=1】的目的是:
如果备份的过程中没有错误发生,则减少备份脚本运行时的进度输出(避免过多的输出)

二、恢复:

在恢复前,先看看我们GITHUB当前的状态。(为了演示,我会创建一个新的REPO,在后面恢复后,按照预期,这个新建的REPO会消失)
当前状态:

创建测试REPO:

可以开始准备恢复了。

首先,停掉GITLAB中数据连接相关的服务:

执行恢复:

可以看到,上面的过程中:
1. 清空当前的数据
2. 恢复备份文件的数据。

然后重新恢复前面停掉的服务:

恢复完成后,可以对GITLAB做一个CHECK检查:

然后,再看看GITLAB的页面:

如上,可以看到恢复前后的对比:
1. 左边,恢复前的状态
2. 右边,恢复后的状态

可以很清楚的看到,恢复前创建的【After_Recovery_I_Will_Gone 】已经被清掉了。

——————————————

至此,简单的备份与恢复已经操作完成。

——————————————
Done。

打赏

1
说点什么

avatar
1 Comment threads
0 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
1 Comment authors
Adamhuan Recent comment authors

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

  Subscribe  
提醒
Adamhuan
游客
Adamhuan

注意:备份的文件只能还原到与备份文件同版本的GITLAB中。
——————————
版本限制得很死,这个感觉不是很好。