采用docker方式安装ElastAlert,图形化配置告警规则----具体内容有删改,仅供查看
1.创建几个文件夹保存ElastAlert相关配置信息,用来挂载到容器中使用
2.编写核心配置,创建 ${ELASTALERT}/config/config.yaml
用来存储核心配置:
3.ElastAlert的启动参数配置,创建 ${ELASTALERT}/config/config.json
启动参数配置文件:
4.编写一条报警规则
5.邮箱认证配置
6.拉取镜像
7.容器编排运行
8.告警规则测试
若无异常,你收到的报警邮箱大概是这样一份聚合后的结果:
ElastAlert Kibana管理插件部署
kibana安装插件
修改kibana配置
保存重启kibana
查看效果
随便填写一个告警规则,保存的时候报错:
容器日志报错提示:
登陆进去容器查看,目录/opt/elastalert/rules
和/opt/elastalert/rule_templates
是在容器启动时挂载进去的,具体权限如下:
考虑到这一点,查看文章开头创建的那几个配置文件目录权限/mnt/elastalert/{config,rules,rule_templates}
给这几个目录其他用户操作的权限就可以了,比如:chmod -R 777 /mnt/elastalert/
然后再在kibana上添加,就会看到已经可以保存成功了
容器日志显示:
实际查看宿主机上的目录,该文件是使用es的用户创建的
ElastAlert 脚本
1.编写start_el_rule.sh用以后台运行特定ElastAlert规则:
2.编写stop.sh用以停止所有规则的运行: