gitlab备份目录修改、定时备份与还原

一、gitlab的备份
1.修改gitlab.rb文件
vi /etc/gitlab/gitlab.rb(分别修改备份目录和备份保留时间)
gitlab_rails[‘backup_path’] = “/var/opt/gitlab/backups” (修改备份目录)
gitlab_rails[‘backup_keep_time’] = 604800 (7天,默认单位为s)
gitlab备份目录修改、定时备份与还原_第1张图片
2.赋予git用户读写权限
chown -R git.git /data/backup/gitlab
3.重新读取配置文件
gitlab-ctl reconfigure
4.重启gitlab
gitlab-ctl restart
5.手动备份命令: gitlab-rake gitlab:backup:create
在备份目录下查看是否产生文件:1628134936_2021_08_05_13.3.6_gitlab_backup.tar(例子)
6.crontab -e 设置定时任务
0 12 * * * /usr/bin/gitlab-rake gitlab:backup:create
注:每次备份时会自动检查文件创建时间,会对备份文件的创建时间进行检查,对超过备份保留时间的备份文件进行删除。

二、gitlab的备份还原
备份还原:(如果是在其他服务器恢复备份,一定要记得将 gitlab.rb 和 gitlab-secrets.json 手动复制到相应路径下
gitlab.rb路径:/etc/gitlab/gitlab.rb
gitlab-secrets.json路径:/etc/gitlab/gitlab-secrets.json)

1.停止数据写入服务
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

2.gitlab-rake gitlab:backup:restore BACKUP=1628134936_2021_08_05_13.3.6 数据恢复(中间选项一直按y)

gitlab-ctl restart 重启

3.查看是否gitlab状态是否正常
注:我这边gitlab还原后页面有1多分钟显示502,刷新一下页面就好了。

三、gitlab数据目录迁移
gitlab-ctl stop 停止服务
vi /etc/gitlab/gitlab.rb
修改git_data_dirs中的path目录(去掉行首的#号,将path列修改)
gitlab备份目录修改、定时备份与还原_第2张图片

yum install -y rsync
rsync -av /var/opt/gitlab/git-data/repositories /usr/gitData
gitlab-ctl reconfigure 配置生效
gitlab-ctl start 开启服务

四、遇到问题
1.gitlab-ctl status显示node-exporter down,通过查看日志gitlab-ctl tail node-exporter 查看错误日志,发现9100端口被占用,利用lsof及netstat查看端口占用程序,并进行修改后,重启后成功启动
2.gitlab更改数据目录后一直显示502
清空浏览器缓存后刷新显示正常。

你可能感兴趣的:(gitlab)