基于对elasticsearch中数据监控需要,我尝试了sentinl和elastalert两款工具。虽然elastalert是纯文本,但易配置管理。elk自带的watch需要付费才可使用。

6.2x版本以上,需要先运行elastalert server服务(docker),然后在能使用kibana plugin elastalert插件

docker 安装 elastalert

注:docker安装时需要注意,需要安装最新的docker 17.x版本,否则无法make镜像

issues

elastalert server

$ cd /usr/local/python3
$ git clone https://github.com/bitsensor/elastalert.git && cd elastalert
$ make build
Sending build context to Docker daemon 150.5 kB
Step 1/29 : FROM alpine:latest as py-ea
Error parsing reference: "alpine:latest as py-ea" is not a valid repository/tag: invalid reference format ###Dockerfile文件中给镜像取别名,将别名删除,在build $ docker build -t elastalert

镜像打完后:

$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
elastalert latest 36984000449d 7 days ago 281MB ###修改全局配置文件
$ vim config/config.json
{
"appName": "elastalert-server",
"port": 3030,
"wsport": 3333,
"elastalertPath": "/opt/elastalert",
"verbose": false,
"es_debug": false,
"debug": false,
"rulesPath": { #规则配置文件存放目录
"relative": true,
"path": "/rules"
},
"templatesPath": {
"relative": true,
"path": "/rule_templates"
},
"es_host": "192.168.20.5", #es host
"es_port": 9200,
"writeback_index": "elastalert_status"
} $ grep "^[^#]" config/elastalert.yaml
es_host: 192.168.20.5
es_port: 9200
rules_folder: rules #配置文件目录
run_every: #全局配置,多久执行一次配置文件
seconds: 30
buffer_time: #全局配置
minutes: 1
writeback_index: elastalert_status #查询匹配到的信息存放的索引名称
alert_time_limit:
days: 2

启动服务:

$ docker run -d -p 3030:3030  \
-v /usr/local/python3/elastalert/config/elastalert.yaml:/opt/elastalert/config.yaml \
-v /usr/local/python3/elastalert/config/config.json:/opt/elastalert-server/config/config.json \
-v /usr/local/python3/elastalert/rules:/opt/elastalert/rules \
-v /usr/local/python3/elastalert/rule_templates:/opt/elastalert/rule_templates \
-v /usr/local/python3/elastalert/server_data:/opt/elastalert/server_data \
-v /usr/local/python3/elastalert/logs:/opt/logs \
--net=host --name elastalert elastalert:latest

安装kibana elastalert plugins

下载地址

kibana install:

$ /usr/local/pkg/kibana/bin/kibana-plugin install file:///usr/local/pkg/sentinl-v6.5.2.zip

elastalert docker安装的更多相关文章

  1. 理解Docker(1):Docker 安装和基础用法

    本系列文章将介绍Docker的有关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 Linux namespace 隔离容器的运行环境 ...

  2. docker安装

    系统要求:需要一个64位的centos7操作系统和版本3.10或更高版本的Linux内核 开始安装: uname -r   //查看内核版本yum -y update //更新系统更新到最新 #安装d ...

  3. 2. Docker - 安装

    一.Docker介绍 1. Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上, 也可以实现虚拟化. 容器时完全使用沙 ...

  4. Docker 安装部署

    Docker学习笔记 一.Ubuntu Docker 安装 (1).获取最新版本Docker安装包 lyn@lyn:/data/docker$ sudo wget -qO- https://get.d ...

  5. docker 安装

    Docker使用了一种叫AUFS的文件系统,这种文件系统可以让你一层一层地叠加修改你的文件,最底下的文件系统是只读的,如果需要修改文件,AUFS会增加一个可写的层(Layer),这样有很多好处,例如不 ...

  6. Docker安装及基本使用方法

    Docker安装 CentOS6上安装Docker # yum -y install epel-release # yum -y install docker-io CentOS7上安装Docker ...

  7. Mac 下 docker安装

    http://www.th7.cn/system/mac/201405/56653.shtml Mac 下 docker安装 以及 处理错误Cannot connect to the Docker d ...

  8. docker安装caffe

    [最近一直想要学习caffe,但是苦苦纠结于环境安装不上,真的是第一步都迈不出去,还好有docker的存在!下面,对本人如何利用docker安装caffe做以简单叙述,不属于教程,只是记录自己都做了什 ...

  9. Docker安装Gitlab

    一.Ubuntu16.4上Docker安装Gitlab 1.安装docker 参见:https://docs.docker.com/engine/installation/linux/ubuntuli ...

随机推荐

  1. 启动hadoop后jps没有namenode,并且启动报错9000

    启动hadoop报错: 解决方法: 我发现没有9000端口被占用,也不知道9000到哪去了,但是也没有NameNode,于是,直接把NameNode格式化了,再重启HDFS即可. 格式化命令:

  2. Linux性能优化实战学习笔记:第五讲

    一.什么是CPU的使用率 1.你最常用什么指标来描述系统的CPU性能? 我想你的答案,可能不是平均负载,也不是CPU上下文切换,而是另一个更直观的指标CPU使用率 CPU使用率到底是怎么算出来的吗? ...

  3. [LeetCode] 871. Minimum Number of Refueling Stops 最少的加油站个数

    A car travels from a starting position to a destination which is target miles east of the starting p ...

  4. netcore与ef资料收集

    http://www.cnblogs.com/cgzl/p/7661805.html https://www.cnblogs.com/cgzl/p/7675485.html https://www.c ...

  5. 如何将vscode的终端放到右侧

    这个问题我之前上百度搜了一下,只有百度经验有, 但是百度经验的图片看不清,而且按照百度经验的回答,我找不到它说的用户设置 于是我问了一下同学,很简单. 右击终端那条框,我们可以得到下面这张截图 点击将 ...

  6. vue 复制文本到剪切板上

    1.下载clipboard.js npm install vue-clipboard2 --save 2.引入,可以在mian.js中全局引入也可以在单个vue中引入 import Clipboard ...

  7. 【转帖】修改Windows网卡的MTU

    修改Windows网卡的MTU https://blog.csdn.net/sunny05296/article/details/103438653 原创sunny05296 发布于2019-12-0 ...

  8. javascript去除字符串中的空格

    使用JavaScript去除字符串的空格,可以有两种方法,一种是使用replace()方法将空格(空白符)替换为空串,一种就是使用trim()方法去除字符串两端的空白字符. replace()方法 r ...

  9. Android 支持库迁移到AndroidX

    一.背景 Android系统版本在不断更新,从最初的Android 1.0到现在Google和各大手机厂商正在推的Android 10,平均下来每个年头都有一个大的版本更新.但用户正在用的手机上的An ...

  10. centos7.x下环境搭建(四)—redis安装

    redis介绍 redis是用C语言开发的一个开源的高性能键值对(key-value)数据库.它通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止redis支持的键值数据类型如下字符串.列表 ...