基于elasticsearch和elastalert的备份状态检查

一,业务背景
数据的备份(恢复)对于企业来说,是挽救生命的最后一根稻草;也是运维日常工作的一个重要组成部分。目前流行的方式是采用脚本对数据进行备份,并同步到远端进行异地备份。一旦需要备份的数据多了后,会面临以下问题:
1.备份是否成功,需要在每个脚本里进行判断并发送邮件,一旦涉及邮箱账号密码调整需要每个脚本调整,容易遗漏;

  1. 对于日常审计要求,如何快速提供备份操作结果是个麻烦事情(登录到机器一个个的统计记录,容易吐);
    之前看《devops最佳实践》一书中一个案例提及,他们公司所有服务器操作记录都集中存放到es,方便集中管理和IT审计。恰巧之前才在公司实现通过elk采集nginx日志,并通elastalert实现基于状态码和后端响应时间记录出现次数的把傲娇。并且kibana可以制作表格视图并导出,这样一来就解决日常备份的两个痛点。

二,方案思路:

1,备份脚本任务一开始便向es中插入一条记录,该记录包括:备份开始时间,备份主机,备份脚本的完整路径和文件名,备份来源,备份目的,备份状态,备份结束时间,文件大小等;并记录插入成功的doc_id;

2,备份结束后,更新该条记录的字段态,主要是更新结束时间,备份状态(默认failed改为success),文件大小等。

3, 备注:
           A,通过开始和结束时间,计算出总的备份时间,方便调整更新窗口;
           B,通过对备份状态字段的值判断,如果为failed则发送邮件报警;
           C,通过文件大小,可以评估磁盘容量使用情况,方便进行容量规划;

三, 实现脚本(数据库备份为例)

 由于整体脚本比较简单,只列shell插入es部分脚本
     1,开始插入记录
     `
  curl -s -H ‘Content-Type: application/json‘ XPUT http://$esUrl/backup_$(date +%Y%m%d)/log/ -d ‘

{基于elasticsearch和elastalert的备份状态检查

原文地址:https://blog.51cto.com/emulator/2370949

时间: 2024-08-26 20:48:28

基于elasticsearch和elastalert的备份状态检查的相关文章

基于HBase的手机数据备份系统

洞穴逃生 描述: 精灵王子爱好冒险,在一次探险历程中,他进入了一个神秘的山洞.在洞穴深处,精灵王子不小心触动了洞穴内暗藏的机关,整个洞穴将很快塌陷,精灵王子必须尽快逃离洞穴.精灵王子的跑步速度为17m/s,以这样的速度可能是无法逃出洞穴的.庆幸的是精灵王子拥有闪烁法术,可在1s内移动60m,不过每次使用闪烁法术都会消耗魔法值10点.精灵王子的魔法值恢复的速度为4点/s,只有处在原地休息状态时才能恢复. 现在已知精灵王子的魔法初值M,他所在洞穴中的位置与洞穴出口之间的距离S,距离洞穴塌陷的时间T.

基于xtrbackup对mysql的备份还原

MySQL备份还原总结 在对数据库备份的时候如果出现Operating system error number 24 in a file operation.这样的错误说明打开的文件太多. 解决方案ulimit -n 1048576 然后在进行对数据库的备份即可 1.介绍 所用的工具为xtrbackup该工具是由perconan公司提供的开源的而且功能非常强大.这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备的工具.特点: (1)备份过程快速.可靠: (2)备份过程不会打

完成rs健康状态检查。

VS具有很好的伸缩缩性.可靠性和管埋性,通过LVS要实现的最终目标是:利用linux 操作系统和LVS集群软件实现一个高可用.高性能,低成本的服务器应用集群. LVS集群的组成利用LVS架设的服务器群系统由3个部分组成:最前端的是负栽均衡层(这里用 Lo ad Balancer表示),中间是服务器集群层(用Server Array表示).LVS体系结构如下图所示: 下面对LVS的各个组成部分进行详细介绍负 栽均衡层:位于整个集群系统的最前端,由一台或多台负栽调度器(Dircctm Server)

RMAN详细教程(二):备份、检查、维护、恢复

RMAN详细教程(一):基本命令代码 一.创建增量备份 增量备份级别为0-4,但为方便备份管理,oracle建议只限于0级和1级. 1.差异增量备份(differential incremental backup)(默认): 每次备份至上一次备份级别小于等于当前级别的备份. 2.累计增量备份(cumulative incremental backup): 1)每次备份至上一次小于当前级别的备份: 2)增量备份需要先进行一次0级备份,作为备份的起点. 3.增量备份例子: backup increm

linux系统负载状态检查脚本

为了便于分析问题,编写了一个linux状态检查脚本,脚本可放置任意目录,脚本执行检测后会输出日志记录到当前目录下.直接执行脚本可用于一次检测,可通过日志进行分析.如果需要长时间监测,可执行-x参数,脚本会自动增加计划任务,并将日志输出到/tmp目录下.如果需要删除计划任务,可执行-xx参数. 脚本下载地址: wget http://jinxiang.oss-cn-hangzhou.aliyuncs.com/vmstatuscheck.sh #使用方法:  #例:./vmstatuscheck.s

Windows Azure Online Backup是一套基于云技术的在线备份

Windows Azure Online Backup是一套基于云技术的在线备份解决方案.你可以通过它将文件备份到云端的数据中心,在本地文件出现损坏或丢失时,他将给你提供更为安全可靠的文件恢复.微软将它作为本地备份解决方案的替代产品.它提供块级存储的增量备份(就是说备份系统仅仅更改数据块的信息,这样就能降低存储和带宽浪费).数据压缩.数据加密和流量限制,以及云端数据完整性验证等功能. 在过去您可以利用Windows Server Backup功能来将您的Windows Server备份到外接式硬

开发程序实现nginx代理节点状态检查及WEB界面展示

实现功能介绍: 利用shell程序及http服务巧妙的实现监控nginx代理节点状态检查,然后通过web界面实时刷新显示结果,是不是有些吃惊这样高大上的程序?那就赶紧看看吧!to用人单位:此课程可以体现学生shell编程功力,以及对nginx proxy企业实战及驾驭的能力. 不同的同学的三个实现方法分享,各位看官,你们看看哪个同学的更好,请评论. 第一个实现脚本:youjinyi 视频下载看地址:http://down.51cto.com/data/1914201 #!/bin/sh port

服务器健康状态检查脚本

在日常工作中,我们经常会定期的检查各个服务器的状态,通过此shell脚本系统可以定期的将每日服务器的检查结果发送到邮箱中,此脚本在正式环境中已稳定运行. 因为我们需要通过邮件发送检测结果,首先必须在服务器上开启sendmail服务并设置为开机自启动,然后需要在/etc/mail.rc中设置相应的参数,/etc/mail.rc中参数的设置如下: set from=邮箱地址 set smtp=smtp服务器的地址 set smtp-auth-user=邮箱的用户名 set smtp-auth-pas

[AngularJS/Elasticsearch] 使用AngularJS为基于Elasticsearch的应用创建前端

使用AngularJS为基于Elasticsearch的应用创建前端 如果使用Elasticsearch使用应用的数据源,我们可以很方便的使用AngularJS结合Elasticsearch提供的相关模块为它创建一个前端. 以创建一个简单的员工信息花名册为例. 准备工作 准备工作分为以下两个方面: 添加前端依赖 安装Bower 在bower.json中添加对于AngularJS和Elasticsearch的依赖: "dependencies": { "angular"