首页 > 代码库 > 笔记: 试用Kibana+Logstash+Elasticsearch+Redis

笔记: 试用Kibana+Logstash+Elasticsearch+Redis

做Android 3年,对网络不是很关注,现在再看让我吃一惊,很多以前期望的功能都开源了,而且功能强大,就试用了一下。

简单试用

下载elasticsearch-1.4.2并启动

下载logstash-1.4.2, 运行下面的命令

bin/logstash -e ‘input { stdin { } } output { elasticsearch { host => localhost } }‘

在console 输入的数据都会被 logstash转入到 elasticsearch  (所以  logstash 就是个数据 glue 或 称为 connector)

发现多了一个index ( 但也多了一个没有用的 Node ,待以后了解)

技术分享

下载 kibana-3.1.0, kibana只是js,放到web app 目录下就可以了

我放到 /var/lib/tomcat6/webapps/ROOT/

而后访问 http://10.15.4.207:8080/kibana-3.1.0/index.html

但它却包错说连接不到 elasticsearch, 查多多篇资料,用下面的方法解决

改 elasticsearch.yml , 添加下面两行

http.cors.enabled: true
http.cors.allow-origin: /https?:\/\/<*your\.kibana\.host*>(:[0-9]+)?/


看到 Kibana的界面

技术分享

加入 redis

下载 redis-2.8.19

make 后运行  src/redis-server 启动服务

redis就是一个类似memcached的数据储存服务接口


这个试验其实很简单,用了两个 logstash 进程

第一个 feed,   读取 stdin 而后把数据发到  redis中

第二个 给index数据,  logstash 读取 redis的数据 而后把数据提交给 elasticsearch

具体步骤,编辑 logstash.feed.conf  

$ cat logstash.feed.conf

input {
  stdin {
  }
}
output {
  stdout { }
  redis { host => "127.0.0.1" data_type => "list" key => "logstash" }
}

并用 bin/logstash -f  logstash.feed.conf 启动

编辑  logstash.index.conf (内容如下)

input {
    redis 
{
host => "127.0.0.1"
data_type =>"list"
key => "logstash"
type => "redis-input"
}
}

output 
{
elasticsearch {
host => "localhost"
}
}

在 feed 的console 输入数据,再到 Kibana窗口中检查


技术分享

数据成功导入了。

有了强大的工具,我最近没有干互联网,但也在构思它的可用之处。


ref:

http://www.cnblogs.com/xiaouisme/p/3977721.html

http://www.cnblogs.com/buzzlight/p/logstash_elasticsearch_kibana_log.html

http://tinytub.github.io/logstash-install.html

http://blog.csdn.net/longxibendi/article/details/35237543

http://m.oschina.net/blog/179848


笔记: 试用Kibana+Logstash+Elasticsearch+Redis