设为首页 收藏本站
查看: 1344|回复: 0

[经验分享] 安装logstash+kibana+elasticsearch+redis搭建集中式日志分析平台

[复制链接]

尚未签到

发表于 2015-7-21 13:35:32 | 显示全部楼层 |阅读模式
  本文是参考logstash官方文档实践的笔记,搭建环境和所需组件如下:


  • Redhat 5.7 64bit / CentOS 5.x
  • JDK 1.6.0_45
  • logstash 1.3.2 (内带kibana)
  • elasticsearch 0.90.10
  • redis 2.8.4
  搭建的集中式日志分析平台流程如下:


DSC0000.png   

elasticsearch
  1、下载elasticsearch。

wget https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-0.90.10.tar.gz

  2、解压后,进入bin目录。执行如下命令,让elasticsearch以前台方式启动:

./elasticsearch -f

[2014-01-16 16:21:31,825][INFO ][node                     ] [Saint Elmo] version[0.90.10], pid[32269], build[0a5781f/2014-01-10T10:18:37Z]
[2014-01-16 16:21:31,826][INFO ][node                     ] [Saint Elmo] initializing ...
[2014-01-16 16:21:31,836][INFO ][plugins                  ] [Saint Elmo] loaded [], sites []
[2014-01-16 16:21:35,425][INFO ][node                     ] [Saint Elmo] initialized
[2014-01-16 16:21:35,425][INFO ][node                     ] [Saint Elmo] starting ...
[2014-01-16 16:21:35,578][INFO ][transport                ] [Saint Elmo] bound_address {inet[/0.0.0.0:9300]}, publish_address {inet[/10.0.2.15:9300]}

Redis
  1、其安装方式可以参考我的另一篇文章Redis编译安装。
  2、进入其bin目录,执行如下命令,使之在控制台输出debug信息:

./redis-server --loglevel verbose

[32470] 16 Jan 16:45:57.330 * The server is now ready to accept connections on port 6379
[32470] 16 Jan 16:45:57.330 - 0 clients connected (0 slaves), 283536 bytes in use

logstash日志生成器(shipper)
  1、新建一个配置文件:shipper.conf,其内容如下:

input {
stdin {
type => "example"
}
}
output {
stdout {
codec => rubydebug
}
redis {
host => "127.0.0.1"
port => 6379
data_type => "list"
key => "logstash"
}
}

  2、启动shipper。执行如下命令:

java -jar logstash-1.3.2-flatjar.jar agent -f shipper.conf

  终端窗口将出现如下提示信息:

Using milestone 2 output plugin 'redis'. This plugin should be stable, but if you see strange behavior, please let us know! For more information on plugin milestones, see http://logstash.net/docs/1.3.2/plugin-milestones {:level=>:warn}

  然后在终端窗口直接按回车,将出现如下信息:

{
"message" => "",
"@version" => "1",
"@timestamp" => "2014-01-16T08:15:19.400Z",
"type" => "example",
"host" => "redhat"
}

  这个json信息将发送给redis, 同时redis的终端窗口将出现类似下面的提示信息:

[32470] 16 Jan 17:09:23.604 - Accepted 127.0.0.1:44640
[32470] 16 Jan 17:09:27.127 - DB 0: 1 keys (0 volatile) in 4 slots HT.
[32470] 16 Jan 17:09:27.127 - 1 clients connected (0 slaves), 304752 bytes in use

logstash日志索引器(indexer)
  1、新建一个配置文件:indexer.conf,其内容如下:

input {
redis {
host => "127.0.0.1"
# these settings should match the output of the agent
data_type => "list"
key => "logstash"
# We use the 'json' codec here because we expect to read
# json events from redis.
codec => json
}
}
output {
stdout { debug => true debug_format => "json"}
elasticsearch {
host => "127.0.0.1"
}
}

  2、启动日志索引器。执行如下命令:

java -jar logstash-1.3.2-flatjar.jar agent -f indexer.conf

  终端窗口将出现如下提示信息:

Using milestone 2 input plugin 'redis'. This plugin should be stable, but if you see strange behavior, please let us know! For more information on plugin milestones, see http://logstash.net/docs/1.3.2/plugin-milestones {:level=>:warn}
You are using a deprecated config setting "debug_format" set in stdout. Deprecated settings will continue to work, but are scheduled for removal from logstash in the future.  If you have any questions about this, please visit the #logstash channel on freenode irc. {:name=>"debug_format", :plugin=>, :level=>:warn}

  索引器从Redis接收到信息,在终端窗口会显示类似如下的信息:

{"message":"","@version":"1","@timestamp":"2014-01-16T17:10:03.831+08:00","type":"example","host":"redhat"}{"message":"","@version":"1","@timestamp":"2014-01-16T17:13:20.545+08:00","type":"example","host":"redhat"}{

logstash WEB界面(kibana)
  1、启动kibana。执行如下命令:

java -jar logstash-1.3.2-flatjar.jar web

  2、打开浏览器(须支持HTML5),输入地址:http://127.0.0.1:9292/index.html#/dashboard/file/logstash.json。界面效果如下:




  参考资料


  • logstash-getting-started-centralized
  • 访谈与书评:《LogStash,使日志管理更简单》
  
  from:http://aofengblog.blog.163.com/blog/static/6317021201401664935685/

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-89124-1-1.html 上篇帖子: redis 常用操作命令 下篇帖子: Tokyo Tyrant (TTServer)and Redis
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表