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

[经验分享] Scribe+HDFS日志收集系统安装方法

[复制链接]

尚未签到

发表于 2015-9-17 10:01:35 | 显示全部楼层 |阅读模式
  1、概述
  Scribe是facebook开源的日志收集系统,可用于搜索引擎中进行大规模日志分析处理。其通常与Hadoop结合使用,scribe用于向HDFS中push日志,而Hadoop通过MapReduce作业进行定期处理,具体可参见日文日志:
  http://d.hatena.ne.jp/tagomoris/touch/20110202/1296621133
  其安装非常复杂,主要是因为其依赖的包,需要设置的环境变量非常多,另外,它与Hadoop兼容不好,安装急需要技巧。目前对于Scirbe的安装方法,网上尽管有人介绍,但往往过于粗略,用处不大。本文比较全面的介绍了Scribe的安装方法,方法已经得到验证。
  2、安装前的准备
  (1)Thrift依赖软件
  具体参见文章:http://wiki.apache.org/thrift/ThriftRequirements, 关于Thrift的介绍,参见我的另一篇日志:http://dongxicheng.org/search-engine/thrift-framework-intro/
  (2)Thrift
  最新版本即可。
  (3)Scribe
  版本2.1和2.2存在问题,直接下载github的当前版本才可用(见参考资料4)。
  (4)Hadoop
  Apache的所有版本(0.20.2(包括)之前)不可用,因为它们的libhdfs与Scribe均不兼容。
  Cloudera的几乎所有版本不可用,只有CDH3 beta2(0.20.2+320)可用。需要强调的是:Cloudera的0.20.2+737和 0.20.2+320之间不可以相互通信(在此指HDFS不可相互通信),Apache 0.20.2版本和Cloudera 0.20.2之间也不可相互通信。具体错误参见参考资料1。
  需要注意的是,我所用的机器是64位的,操作系统是Ubuntu。
  3、安装流程
  (1)安装Thrift依赖软件
  必须得安装的是:g++, boost,autoconf,libevent,Apache ant, JDK, PHP,python
  其它脚本语言根据需要安装
  (2)安装Thirft
  大体流程是:
  tar -zxvf thrift-0.2.0.tar.gz
  cd thrift-0.2.0
  ./bootstrap.sh
  ./configure
  sudo make
  sudo make install
  遇到具体问题,可到google上查找,这方面资料很多。
  安装完Thirft后,记得运行一下它提供的example,看是否安装成功。方法:在thrift源代码目录有一个叫tutorial的目录,进行其中后运行thrift命令生成相应的服务代码:
  $ thrift -r –gen cpp tutorial.thrift // -r对其中include的文件也生成服务代码 -gen是生成服务代码的语言
  运行完之后会在当前目录看到一个gen-cpp目录,其中就是thrfit命令生成的代码。这时你cd到tutorial/cpp目录,运行make,生成相应的CppServer与CppClient程式。
  此时你可以分别运行CppServer和CppClient,让它们通信。
  (3)安装Hadoop
  如果你发现Hadoop中自带的已经编译好的libhdfs不可用(libhdfs在$HADOOOP_HOME/c++中),可自己编译生成libhdfs,方法是,在$HADOOP_HOME下,输入: ant compile-c++-libhdfs -Dislibhdfs=true ,同时设置Hadoop的CLASSPATH。
  (4)安装Scribe
  ./boottrap.sh (主要目的是生成configure, 如果出现类似于configure: error: Could not link against  !的错误,不要管,进行下一步好了!)
  ———————————
  ./configure –with-boost=/usr/local/boost –prefix=/usr/local/scribe –with-hadooppath=/home/dong/hadoop-0.20.2/ –enable-hdfs CPPFLAGS=”-I/opt/jdk1.6.0_21/include/ -I/opt/jdk1.6.0_21/include/linux -I/home/dong/hadoop-0.20.2/src/c++/libhdfs” LDFLAGS=”-L/opt/jdk1.6.0_21/jre/lib/amd64 -L/opt/jdk1.6.0_21/jre/lib/amd64/server -L/home/dong/hadoop-0.20.2/build/c++/Linux-amd64-64/lib -ljvm -lhdfs”
  ————————————————
  make
  ———————————————–
  sudo make install
  安装成功验证方法参见参考文献(5)。
  4、可能出现的错误及解决方法
  (1)运行boottrap.sh时,产生以下错误:
  checking whether the Boost::System library is available… yes
  checking whether the Boost::Filesystem library is available… yes
  configure: error: Could not link against  !
  当安装的boost目录不在默认的/usr目录下时,用户需要配置boost安装目录,如:
  ./configure –with-boost=/usr/local/boost –prefix=/usr/local/scribe
  (2)运行examples时,产生以下错误:
  Traceback (most recent call last):
  File “examples/scribe_cat”, line 24, in <module>
  from scribe import scribe
  ImportError: No module named scribe
  解决方法:python找不到scribe模块,需要把scribe package包含进来,如:
  export PYTHONPATH=”/usr/lib/python2.6/site-packages/”
  (3)Exception in thread “main” java.lang.NoClassDefFoundError: org/apache/ hadoop/conf/Configuration
  解决方法,将Hadoop的classpath加到环境变量中,如:
  export CLASSPATH=$HADOOP_HOME/hadoop-core-0.20.2+320.jar
  5、参考资料
  (1)介绍scribe与libhdfs的兼容性问题(日文):
  http://d.hatena.ne.jp/tagomoris/touch/20110107/1294368321
  (2)介绍scribe的安装方法(日文):
  http://d.hatena.ne.jp/tagomoris/touch/20110106/1294311969
  (3)介绍scribe的安装方法(英文):http://www.myhpcblog.blogspot.com/
  (4)scribe下载官方主页:https://github.com/facebook/scribe
  (5)Scribe应用介绍:
  http://blog.octo.com/en/scribe-a-way-to-aggregate-data-and-why-not-to-directly-fill-the-hdfs/
  (6)Scribe安装方法:http://blog.octo.com/en/scribe-installation/
  (7)Hadoop的各个CDH版本下载地址:http://archive.cloudera.com/cdh/3/

  原创文章,转载请注明: 转载自董的博客
  本文链接地址: http://dongxicheng.org/search-engine/scribe-installation/

运维网声明 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-114805-1-1.html 上篇帖子: Ubuntu 12.04 安装scribe 的笔记 | 动漫驿站 下篇帖子: [转载] Scribe应用实例
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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