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用以停止所有規則的運行: