环境基础 参考如下(一定要看如下文章,两者有关联)
- 如何将所学知识转换为实际项目
rsync+crontab实现定时备份
环境
- CentOS Linux release 7.5.1804 (Core)
关闭防火墙和selinux
192.168.153.179 master
192.168.153.178 backup
开始部署
- master操作
二进制安装 gitlab
[root@server ~]# ls
gitlab-ce-10.0.2-ce.0.el7.x86_64.rpm
[root@server ~]# yum -y install gitlab-ce-10.0.2-ce.0.el7.x86_64.rpm
改为gitlab主机IP
vim /etc/gitlab/gitlab.rb
重新配置并启动gitlab
gitlab-ctl reconfigure
登录我们的gitlab并创建群组和项目,之后添加a文件
修改重启rsync
[root@server ~]# vim /etc/rsyncd.conf
[root@server ~]# pkill rsync
[root@server ~]# rsync --daemon
执行备份命令:此命令会备份gitlab仓库、数据库、用户、用户组、用户密钥、权限等信息。
gitlab-rake gitlab:backup:create
备份后我们的 master端会出现如下数据
- backup端操作
数据添加成功
灵魂拷问?
- 那么但我gitlab服务器数据丢失该如何恢复呢???
指点迷津!
- 通过gitlab备份文件可以恢复gitlab所有的信息,包括仓库、数据库、用户、用户组、用户密钥、权限等信息。
开始操作
我们进入服务端gitlab页面将 a.txt删除
- master命令行操作
- 1、停止相关数据连接服务
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
- 2、恢复gitlab仓库
现在我们要从“1604020090_2020_10_30_10.0.2”这个备份标号中,恢复数据,命令如下:(中间如需输入yes/no)相信大家应该知道如何输入
gitlab-rake gitlab:backup:restore BACKUP=1604020090_2020_10_30_10.0.2
- 3、启动gitlab服务
gitlab-ctl start
之后我们登陆我们的gitlab仓库查看(可能会出现 502 )大家不要慌,耐心等待刷新即可
到这里我们的任务就完成了
1、将gitlab数据备份到backup端
2、学会了如何通过备份编号恢复gitlab数据