gitlab的备份、恢复、迁移、升级

一、备份

gitlab自带备份命令

gitlab-rake gitlab:backup:create
备份的命令

具体备份到了哪,以及备份保留多久

可以在 vim /etc/gitlab.rb 配置文件中配置

gitlab_rails['backup_path'] = "/var/opt/gitlab/backups" #备份的路径
gitlab_rails['backup_keep_time'] = 604800               #单位是秒,这里604800表示备份保留7天

如果修改了备份的路径,记得要执行一次初始化操作:gitlab-ctl reconfigure

备份的过程需要等待一段时间

当出现Backup task is done.表示备份结束
在这里插入图片描述

来到备份的路径,可以看到之前的备份

在这里插入图片描述

如何实现每天自动备份呢?
使用contab即可


二、恢复

注意恢复的前提是,之前做过备份

当我们把某个项目干掉以后,又想恢复回来,就可以通过备份,将项目恢复回来

例,这里将名为tm的项目删掉

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
删掉后项目列表如下
在这里插入图片描述

开始恢复操作

1.先停止数据写入服务,停掉以下服务

gitlab-ctl stop unicorn

gitlab-ctl stop sidekiq

2.通过gitlab-rake命令进行恢复

gitlab-rake gitlab:backup:restore BACKUP=备份文件的文件名

注意这里的文件名不用写全,写到时间戳和版本号这里就行了

gitlab-rake gitlab:backup:restore BACKUP=1664175947_2022_09_26_12.3.5

它自己会到备份文件的目录下,找到对应的备份文件,进行恢复

看到Restore task is done.表示恢复操作结束
在这里插入图片描述

3.重启gitlab,检查是否恢复完毕

gitlab-ctl restart

在这里插入图片描述

恢复操作完成后,会发现删掉的项目又回来了
在这里插入图片描述


三、迁移

迁移的步骤:

1.备份旧gitlab

2.在新机器安装相同环境的gitlab

3.在新机器恢复旧gitlab的备份

4.验证数据的完整性

5.将域名解析到新的gitlab服务器地址

6.保留旧gitlab服务器一段时间,确认没问题,销毁。( 7-15天 )

一般情况下,迁移会迁移两个文件,/etc/gitlab/gitlab.rb 和backups下的备份文件


四、升级

在迁移的时候,可以顺便升级

例如将gitlab迁移到云端,迁移后顺带升级一下

在这里插入图片描述
gitlab的升级和其他的升级不一样。不支持跨域版本升级。只能小版本迭代。

gitlab-11版本–>gitlab-12版本,这种大版本升级是无法升级的。

需要先升级到gitlab-11的最新版本–然后才能升级到gitlab-12版本,否则升级报错。


例如:

1.先想办法升级到:gitlab-ce-11.9.9-ce.0.el7.x86_64.rpm

2.然后才能 升级到 gitlab-ce-12版本

升级:

1.gitlab启动的状态下,安装新版本

yum localinstall gitlab-ce-12.10.9-ce.0.el7.x86.rpm -y

2.确认数据是否正常

登陆到gitlab,查看升级后的版本信息,查看项目等数据是否正常

3.然后再进行跨大版本升级

yum localinstall gitlab-ce-13.xx.x-ce.0.el7.x86.rpm -y


当升级时遇到升级失败,提示以下信息

在这里插入图片描述

这里需要改配置文件才行

vim gitlab.rb
在这里插入图片描述

修改配置后重新初始化,然后在进行升级

gitlab-ctl reconfigure

yum localinstall gitlabce-13.xx.x-ce.0.el7.x86_64.rpm -y

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐