有一段时间没写博客了,前面都是写了些部署与安装服务的,后面会陆续写些实用的,实战性的。
本人前面也有篇关于部署gitlab服务的文章,下面主要分享的是gitlab的数据备份。毕竟gitlab上存放的是较重要的代码和文档,所以必须要考虑到 单点故障问题。所以就有了以下备份数据的shell脚本,此脚本目前依旧在使用中,没有病毒,可以放心使用。
当然,如果需要更加详细的步骤,可以下载我上传的PDF文档。
备份脚本:autoBackup.sh
#!/bin/bash
#定时任务在crontab
SOURCE_PATH=/var/opt/gitlab/backups
DEST_PATH=/data/gitlab/backups
SERV_IP=172.16.12.8
USER=root
PASSWORD=12345678b
hostName=`ssh 172.16.12.8 'hostname'`
echo "----------备份gitlab数据..."
gitlab-rake gitlab:backup:create;
echo "----------删除本机过期数据..."
find $SOURCE_PATH -name "*.tar" -ctime +2 -type f -exec rm -rf {} \;
echo "----------备份数据至172.16.12.8..."
scp -r $SOURCE_PATH/*.tar $USER@$SERV_IP:$DEST_PATH
#echo "----------删除172.16.12.8过期数据..."
#ssh $hostName 'find $SOURCE_PATH -name "*.tar" -ctime +2 -type f -exec rm -rf {} \;'
echo -e "----备份结束\n"
exit
清理脚本:autoDel.sh
#!/bin/bash
#每天凌晨4点删除1天前保存的文件
BACKUP_PATH=/data/gitlab/backups
find $BACKUP_PATH -name "*.tar" -ctime +1 -type f -exec rm -rf {} \;