gitlab主动定时备份文件,备份失败发送邮件

打印 上一主题 下一主题

主题 899|帖子 899|积分 2697

一、需求

为防备gitlab出现故障,每天定时备份,备份完成后把之前的备份文件删除,备份成功或失败的时间主动发送邮件提醒,这里的gitlab为docker摆设。
二、备份命令预备

1)备份命令

 创建一个 gitlab_auto_backup.sh文件,文件内容
  1. #!/bin/bash
  2. # 进入GitLab容器并执行备份 --gitlab为docker名称
  3. docker exec -t gitlab gitlab-backup create
  4. # 查找并删除1天前的备份文件 /home/gitlab/opt/backups/ 为docker挂载data的目录
  5. find /home/gitlab/opt/backups/ -type f -mtime +1 -name "*.tar" -exec rm -rf {} \;
复制代码
把gitlab_auto_backup.sh文件放到服务器上,这里放到目次  /home/gitlab/gitlab_auto_backup.sh
给权限
  1. chmod +x /home/gitlab/gitlab_auto_backup.sh
复制代码
2)让备份命令定时主动执行

使用linux的cron来定时执行上面创建的命令脚本文件,vi /etc/crontab 打开 crontab文件
每天零晨2点执行

 
3)linux服务器邮件发送设置

设置发送邮件服务
安装mailx sendmail,如果已安装会提示已经安装,没安装会主动安装
  1. yum install -y mailx sendmail
复制代码
查看Active的状态
  1. systemctl status sendmail
复制代码
如果active(running)正常,如果为dead则需要启动服务,启动命令
  1. systemctl start sendmail
复制代码
设置服务 /etc/mail.rc,以163邮箱为例
  1. #打开配置文件<br>vi /etc/mail.rc
复制代码
编辑设置文件增加设置
  1. set from=xxxx@163.com #邮箱
  2. set smtp=smtp.163.com #smtp地址
  3. set smtp-auth-user=xxxx@163.com
  4. set smtp-auth-password=授权码 #不是邮件的密码,是申请smpt发送邮件的授权码
  5. set smtp-auth=login
复制代码
邮件发送测试
1、直接发送内容
发送内容:test content
标题:test title
收件人:123456@qq.com
  1. echo "test content" | mail -s "test title" 123456@qq.com
复制代码
 

 2、使用文件内容作为邮件内容发送
把 /tmp/test.txt的内容作为邮件内容发送
mail -s "test title" 123456@qq.com < /tmp/test.txt
 4)备份成功失败发送邮件

修改备份命令,增加发送邮件。gitlab_auto_backup.sh完整内容替换为:
  1. #!/bin/bash
  2. # 进入GitLab容器并执行备份
  3. docker exec -t gitlab gitlab-backup create
  4. # $?符号显示上一条命令的返回值,如果为0则代表执行成功,其他表示失败,注间中括号前后有一个空格
  5. if [ $? -eq 0 ];then
  6.    echo "gitlab备份成功" | mail -s "gitlab备份成功" 123456@qq.com
  7. else
  8.    echo "gitlab备份失败" | mail -s "gitlab备份失败" 123456@qq.com
  9. fi
  10. # 查找并删除1天前的备份文件
  11. find /home/gitlab/opt/backups/ -type f -mtime +1 -name "*.tar" -exec rm -rf {} \;
复制代码
手动执行gitlab_auto_backup.sh文件测试效果
  1. #执行备份命令
  2. /home/gitlab/gitlab_auto_backup.sh
复制代码

 完成!
 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

用户云卷云舒

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表