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

[经验分享] CentOS5.5下scribe写入数据到HDFS配置方法

[复制链接]

尚未签到

发表于 2019-1-30 10:10:03 | 显示全部楼层 |阅读模式
  1按照CentOS 5.5 下配置Hadoop 0.21单节点 一文中的方法配置Hadoop
  2编译scribe,支持hdfs
  2.1下载thrift,libevent,boost等库,可以都下载最新版本,基本上都是make & make install
  2.2下载最新版scribe-2.2,之前在网上看到说scribe有很多bug,必须在当前开发版本才能写入HDFS,试了好久没成功,也以为确实是代码的问题,现在发现不是这个问题,直接下载 该版本
  2.3在scribe源码包里面bootstrap.sh,按照文档上的说法是可以一步到位的即:./configure --with-hadooppath=/usr/local/hadoop --enable-hdfs CPPFLAGS="-I/usr/local/java/include -I/usr/local/java/include/linux" LDFLAGS="-ljvm -lhdfs",但是我的机器上面这样不行,因此直接./configure --enable-hdfs,然后修改相应的Makefile(src目录下面的),将以下字段修改如下:
  CPPFLAGS = -I/usr/local/lib/jdk1.6.0_23/include -I/usr/local/lib/jdk1.6.0_23/include/linux
  上面的JDK路径以机器上面的实际路径为准。
  2.4拷贝hadoop-0.21.0/hdfs/src/c++/libhdfs/hdfs.h文件到scribe/src目录下,libhdfs其实就是通过JNI让C/C++调用HDFS接口,在hadoop-0.21.0/hdfs/src/c++/libhdfs目录下面执行如下操作
  ./configure --enable-shared JVM_ARCH=tune=k8 --prefix=`pwd`/nativelib
  ./make install
  这时会在nativelib/lib下面生成5个文件,将其都拷贝到/usr/local/lib下面,执行ldconfig
  2.5编译scribe,在scribe/src目录下面执行./make,即可生成scribed文件,
  2.6按照scribe/examples目录下面的配置文件写个简单的支持HDFS的配置文件simple_hdfs_example.conf:
  port=1463
  max_msg_per_second=2000000
  check_interval=1
  max_queue_size=100000000
  num_thrift_server_threads=2
  # DEFAULT - write all messages to hadoop
  
  category=default
  target_write_size=20480
  type=file
  fs_type=hdfs
  file_path=hdfs://localhost:9000/scribedata
  create_symlink=no
  use_hostname_sub_directory=yes
  base_filename=thisisoverwritten
  max_size=1000000000
  rotate_period=100s
  add_newlines=1
  
  
  category=qt
  target_write_size=20480
  type=file
  fs_type=hdfs
  file_path=hdfs://localhost:9000/scribedata
  create_symlink=no
  use_hostname_sub_directory=yes
  base_filename=thisisoverwritten
  max_size=1000000000
  rotate_period=100s
  add_newlines=1
  
  2.7到处libhdfs库需要使用的jar路径即CLASSPATH,具体需要哪些不太清楚,官方文档上建议将hadoop/lib目录下所有的库的加入,下面是我导出的:

  export>  XXX你懂的。
  2.8可以执行scribe了, ./scribed ../examples/simple_hdfs_example.conf
  2.9通过发送工具发送日志到scribe,echo "Successful write data to HDFS,I am qiutao" | ./scribe_cat qt
  3.10在hadoop目录下面执行bin/hadoop dfs -lsr /scribedata即可看到相应的数据生成了。
  整个过程确实比较繁琐,尤其要注意2.4,一定要在自己机器上面编译libhdfs库,否则会出现一些莫名其妙的问题,基本上都是抛出的java异常,在这个上面吃了不少亏,终于在自己机器上面写入HDFS了,一步步的也学到了不少东西,留作以后备用。


运维网声明 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-669478-1-1.html 上篇帖子: 基于日志的统计 下篇帖子: 如何将scribe运用到实际业务当中
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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