跳至主要內容

gitlab数据备份和迁移

zhengcog...大约 2 分钟版本控制git

自建的Gitlab服务器常常会因为使用时间的增长,其空间容量等硬件需求都需要升级,或者迁移至更高配置的服务器上。备份、迁移、恢复、升级过程如下

提示

本教程在centos7.9下操作

一. gitlab备份

通过rpm安装gitlab后,仓库默认存储路径为/var/opt/gitlab/git-data/repositories,如果要修改存储路径就修改配置文件

vi /etc/gitlab/gitlab.rb
# 在git_data_dirs下面添加 /data/gitdata

git_data_dirs({
  "default" => {
    "path" => "/data/gitdata"
  }
})

# 停止当前的gitlab,重新加载配置
gitlab-ctl stop
gitlab-ctl reconfigure

# 重新加载后/data/gitdata目录下会多出repositories目录

# 启动gitlab
gitlab-ctl start

备份目录默认在 /var/opt/gitlab/backups,如果要修改,可以按照以下方法修改

vi /etc/gitlab/gitlab.rb

# 取消以下两行注释
# gitlab_rails['manage_backup_path'] = true
# gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"

# 将gitlab_rails['backup_path']改为 /data/gitdata/backups即可
gitlab_rails['manage_backup_path'] = true
gitlab_rails['backup_path'] = "/data/gitdata/backups"

# 保存配置后,重新配置
gitlab-ctl reconfigure
gitlab-ctl restart

开始备份

通过gitlab-rake命令备份gitlab,备份时gitlab需处于运行状态中,需要sudo权限,不然会报错,运行以下命令开始备份

sudo gitlab-rake gitlab:backup:create

使用以上命令,会在/var/opt/gitlab/backups目录下创建一个名称类似1688453993_2023_07_04_12.0.6_gitlab_backup.tar的压缩包,这个压缩包就是gitlab整个完整备份

该备份命令会备份gitlab仓库、数据库、用户、用户组、用户密钥、权限等信息

提示

/etc/gitlab/gitlab.rb 和 gitlab-secrets.json两个文件包含敏感信息,不会自动备份到备份文件中,需手动备份

修改以下配置,可以修改备份过期时间,过期会自动删除旧的备份

vi /etc/gitlab/gitlab.rb

gitlab_rails['backup_keep_time'] = 604800 # 单位:秒

二. gitlab恢复备份

提示

备份服务器和执行恢复命令的服务器必须安装相同版本的gitlab

开始恢复

停止相关数据连接服务

gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

恢复gitlab仓库

# 恢复1688453993_2023_07_04_12.0.6_gitlab_backup.tar备份
cd /var/opt/gitlab/backups
gitlab-rake gitlab:backup:restore BACKUP=1688453993_2023_07_04_12.0.6

待恢复完成后,启动gitlab服务

gitlab-ctl start

三. gitlab迁移

整体思路

  1. 在新服务器上安装与备份相同版本的gitlab
  2. 将备份生成的压缩包1688453993_2023_07_04_12.0.6_gitlab_backup.tar上传到新服务器

开始迁移

提示

以下操作在新服务器中执行

停止相关数据连接服务

gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

执行以下命令恢复备份

cd /var/opt/gitlab/backups
gitlab-rake gitlab:backup:restore BACKUP=1688453993_2023_07_04_12.0.6

恢复完成后,重启gitlab服务

gitlab-ctl start
上次编辑于:
贡献者: Hyman
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.5