转自 http://blog.csdn.net/jiedushi/article/details/12003171

Fluentd是一个开源收集事件和日志系统,它目前提供150+扩展插件让你存储大数据用于日志搜索,数据分析和存储。

官方地址http://fluentd.org/  插件地址http://fluentd.org/plugin/

Kibana 是一个为 ElasticSearch 提供日志分析的 Web ui工具,可使用它对日志进行高效的搜索、可视化、分析等各种操作。官方地址http://www.elasticsearch.org/overview/kibana/

elasticsearch 是开源的(Apache2协议),分布式的,RESTful的,构建在Apache Lucene之上的的搜索引擎.

官方地址http://www.elasticsearch.org/overview/    中文地址 http://es-cn.medcl.net/

具体的工作流程就是利用fluentd 监控并过滤hadoop集群的系统日志,将过滤后的日志内容发给全文搜索服务ElasticSearch, 然后用ElasticSearch结合Kibana 进行自定义搜索web页面展示.

下面开始说部署方法和过程。以下安装步骤在centos 5 64位测试通过

一、  elasticsearch安装部署

elasticsearch 官方提供了几种安装包,适用于windows的zip压缩包,适用于unix/linux的tar.gz压缩包,适用于centos系统的rpm包和ubuntu的deb包。大家可以自己选择安装使用。

因为elasticsearch 需要java环境运行,首先需要安装jdk,安装步骤就省略了。

使用.tar.gz压缩包安装部署的话,先下载压缩包

# wget  https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-0.90.5.tar.gz

# tar zxvf elasticsearch-0.90.5.tar.gz

////////////如果是单机部署

# cd elasticsearch-0.90.5

# elasticsearch-0.90.5/bin/elasticsearch -f

就可以启动搜索服务了,查看端口9200是否打开,如果打开说明启动正常。

////////////////如果是部署集群的话,需要进行配置

例如在192.168.0.1   192.168.0.2 两台服务器部署,两台服务器都安装好jdk,下载elasticsearch 解压缩,然后编辑配置文件

//////////////////////192.168.0.1   服务器编辑文件

vi elasticsearch-0.90.5/config/elasticsearch.yml

删除cluster.name 前面注释,修改集群名称

cluster.name: es_cluster

删除node.name前注释 ,修改节点名称,不修改的话,系统启动后会生成随即node名称。

node.name: "elastic_inst1"

node.master: true    设置该节点为主节点

/////////////////////////192.168.0.2  编辑文件

vi elasticsearch-0.90.5/config/elasticsearch.yml

删除cluster.name 前面注释,修改集群名称

cluster.name: es_cluster

删除node.name前注释 ,修改节点名称,不修改的话,系统启动后会生成随即node名称。

node.name: "elastic_inst2"

node.master: false    设置该节点为主节点

分别启动两台服务器的服务后,在192.168.0.2的日志中会看到

[elastic_inst2] detected_master [elastic_inst1]     日志信息。说明集群连接成功。

二、安装部署fluentd

在需要监控分析的hadoop集群节点中安装fluentd,安装步骤很简单

curl -L http://toolbelt.treasure-data.com/sh/install-redhat.sh | sh

安装完成后,编辑配置文件

# vim /etc/td-agent/td-agent.conf

  1. <source>
  2. type tail  #### tail方式采集日志
  3. path /var/log/hadoop/mapred/hadoop-mapred-tasktracker-node-128-70.log   ### hadoop日志路径
  4. pos_file /var/log/td-agent/task-access.log.pos
  5. tag task.mapred
  6. format /^(?<message>.+(WARN|ERROR).+)$/   #### 收集error 或者warn 日志。
  7. </source>
  8. <match task.**>
  9. host 192.168.0.1  #####  <span style="font-family:Arial,Helvetica,sans-serif">elasticsearch 服务器地址</span>
  10. type elasticsearch
  11. logstash_format true
  12. flush_interval 5s
  13. include_tag_key true
  14. tag_key mapred
  15. </match>

启动fluentd 服务

# service td-agent start

三、安装部署kibana 3

kibana 3 是使用html 和javascript 开发的web ui前端工具。

下载 wget http://download.elasticsearch.org/kibana/kibana/kibana-latest.zip

解压缩 unzip kibana-latest.zip

安装apache    yum -y install httpd

cp -r  kibana-latest /var/www/html

因为我将kibana3 安装在和elasticsearch同一台服务器中,所以不用修改配置文件

启动apache  service httpd start

打开浏览器 http://ip/kibana 就可以看到kibana 界面

初次使用kibana 需要自己定义模块

最新文章

  1. 前端性能优化---yahoo军规
  2. django使用ldap认证
  3. CF 445B DZY Loves Chemistry(并查集)
  4. scanf函数与输入缓冲区
  5. 修改linux 文件权限命令 chmod
  6. 精华阅读第 10 期 |解开阿尔法狗(AlphaGo)人工智能的画皮
  7. AngularJS code converage
  8. 【Spring MVC系列】--(4)返回JSON
  9. ios之极光推送消息收到以后对消息的处理总结
  10. SpringMVC第六篇【校验、统一处理异常】
  11. [Luogu3041][USACO12JAN]视频游戏的连击Video Game Combos
  12. nginx 编译参数详解(运维必看--转)
  13. 洛谷 P1047 校门外的树
  14. jenkins检查代码,如没更新停止构建步骤
  15. 用js实现二维数组的旋转
  16. Java的反射机制Reflect
  17. ios开发之--使用xib适配iPhone X
  18. 装机 win7 64 IE11
  19. leetcode 120. 三角形最小路径和 JAVA
  20. Delphi 跨平台 Socket 通讯库

热门文章

  1. Rewrite的QSA是什么意思?
  2. DbUtils组件
  3. elasticsearch 性能优化
  4. Spark的RDD编程(二)公众号undefined110
  5. BZOJ 1057 棋盘制作
  6. bcb 如何在DLL中捕捉系统级异常
  7. 同一张表不同SESSION相互持有对方记录引发的死锁
  8. 自己动手实现Queue
  9. 【转】android JNI
  10. LeetCode--判断二叉树是否对称