`
josephgao
  • 浏览: 15210 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

scribed + hdfs

 
阅读更多
scribe安装与配置
1. 依赖软件:

a. autoconf: 
 wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz tar xvf autoconf-2.69.tar.gz
cd autoconf-2.69
./configure --bindir=/usr/bin
make && make install
 
 
 
 b. 依赖库:
yum install libevent libevent-develpython-devel yum install gcc-c++
yum install libtool
yum install automake
yum install byacc flex

c. boost, 最好1.45
  wget http://jaist.dl.sourceforge.net/project/boost/boost/1.45.0/ boost_1_45_0.tar.gz
  
  tar -xf boost_1_45_0.tar.gz
 cd boost_1_45_0
 ./bootstrap.sh
 ./bjam install --prefix=/usr/local/bootstrap

d. thrift
wget --no-check-certificate https://dist.apache.org/repos/dist/release/ thrift/0.8.0/thrift-0.8.0.tar.gz

 tar xzf thrift-0.8.0.tar.gz
 cd thrift-0.8.0
 ./configure --with-boost=/usr/local/bootstrap/ --with-java --prefix=/usr/local/thrift --with-php-config=/usr/local/php/bin/php-config   make && make install

cd thrift-0.8.0/contrib/fb303
  ./bootstrap.sh --prefix=/usr/local/thrift/fb303 --with-boost=/usr/ local/bootstrap/ --with-thriftpath=/usr/local/thrift/
  ./configure --prefix=/usr/local/thrift/fb303 --with-boost=/usr/local/ bootstrap/ --with-thriftpath=/usr/local/thrift/ CPPFLAGS="- DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H"

2. 安装scribe
export BOOST_ROOT=/usr/local/bootstrap/
export LD_LIBRARY_PATH=/usr/local/thrift/lib:/usr/lib:/usr/local/lib:/
usr/local/bootstrap/lib/
 ./bootstrap.sh --prefix=/usr/local/scribe --with-boost=/usr/local/bootstrap/ --with-thriftpath=/usr/local/thrift/ --with-fb303path=/usr/local/thrift/fb303 -- with-hadooppath=$HADOOP_HOME --enable-hdfs
 ./configure --prefix=/usr/local/scribe --with-boost=/usr/local/bootstrap/ -- with-thriftpath=/usr/local/thrift/ --with-fb303path=/usr/local/thrift/fb303 -- with-hadooppath=$HADOOP_HOME --enable-hdfs CPPFLAGS="-I $HADOOP_HOME/src/c++/libhdfs/ -I$JAVA_HOME/include/ -I $JAVA_HOME/include/linux/ -I$JAVA_HOME/jre/lib/amd64" LDFLAGS="- ljvm -lhdfs -L$JAVA_HOME/jre/lib/amd64-L$HADOOP_HOME/c++/Linux- amd64-64/lib "
 这里有可能会报错,C Compiler 之类的,去看config.log发现是gcc -ljvm 和 gcc -lhdfs找不到,
 -ljvam:
  ln -s $JAVA_HOME/jre/lib/amd64/server/libjvm.so /usr/lib64/ libjvm.so.2.2
  ln -s /usr/lib64/libjvm.so.2.2 /usr/lib64/libjvm.so

 -lhdfs:
  ln -s $HADOOP_HOME/c++/Linux-amd64-64/lib/libhdfs.so.0 /usr/ lib64/libhdfs.so.0
 这里一定要用链接,不要直接copy,会找不到这两个库依赖的库的..
 到这里编译应该可以成功了(应该...)
 然后需要 copy $HADOOP_HOME/src/c++/libhdfs/hdfs.h src/
然后修改src/HdfsFile.cpp 将hdfsConnectNewInstance() 改成 hdfsConnect(), hdfsConnectNewInstance是某个scribe时期的hadoop历史版本, 现在已经不支持
 make&&make install

3. 需要添加的环境变量
 export CLASSPATH = $CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/ jre/lib:$HADOOP_HOME/hadoop-core-1.0.4.jar:$HADOOP_HOME/lib/co mmons-logging-1.1.1.jar:$HADOOP_HOME/lib/commons-configuration-1.6.jar: $HADOOP_HOME/lib/commons-logging-api-1.1.1.ja r:$HADOOP_HOME/lib/commons-lang-2.4.jar
 export BOOST_ROOT=/usr/local/bootstrap/
 export LD_LIBRARY_PATH=/usr/local/thrift/lib:/usr/lib:/usr/local/lib:/ usr/local/bootstrap/lib/

4. 中间可能遇到的问题
 一. 编译scribe时 configure: error: Could not link against boost_filesystem !
  设置环境变量
  export BOOST_ROOT=/usr/local/bootstrap/
中交兴路-基础研发部-⾼高健峰 2013-05-28
  export LD_LIBRARY_PATH=/usr/local/thrift/lib:/usr/lib:/usr/ local/lib:/usr/local/bootstrap/lib/
 二. make时, hdfsConnectNewInstance not in this scope
  将HdfsFile.cpp 中的hdfsConnectNewInstance 改为 hdfsConnect
 三. 运行时, Configuration, LogFactory, StringUtil not found
  export CLASSPATH = $CLASSPATH:$JAVA_HOME/lib: $JAVA_HOME/jre/lib:$HADOOP_HOME/hadoop-core-1.0.4.jar: $HADOOP_HOME/lib/co mmons-logging-1.1.1.jar:$HADOOP_HOME/lib/commons-configuration-1.6.jar:
$HADOOP_HOME/lib/commons-logging-api-1.1.1.ja r:$HADOOP_HOME/lib/commons-lang-2.4.jar
 四. 运行时 hdfs append not supported!
  修改hadoop配置文件hdfs-site.xml
  加入 <property>
<name>dfs.support.append</name>
<value>true</value> </property>

5. 源代码的一些修改
   HdfsFile.cpp 关于hdfsExist部分的修改
   Store.cpp 关于baseFileName部分的修改 
分享到:
评论

相关推荐

    scribe+hadoop+log4j+hive+mysql

    - **日志分析**:可以利用 Log4j 来记录应用程序运行时的各种日志信息,再通过 Scribe 收集这些日志到 HDFS 中。之后使用 Hive 查询这些数据,以获取关于用户行为、系统性能等方面的洞察。 - **数据持久化**:对于...

    scribe软件

    5. **灵活性**: 支持多种后端存储系统,如Hadoop HDFS、Cassandra、MySQL等,可根据实际需求选择合适的存储方案。 在scribe-master压缩包中,可能包含以下组件和配置文件: - **源代码**: scribe的源代码,用于...

    facebook scribe

    4. **持久化**:为了防止数据丢失,Scribe支持将日志数据定期写入磁盘,并且可以配置多个存储层,如内存、硬盘和HDFS等。 5. **监控与反馈**:Scribe Server会返回一个状态码给生产者,告知日志写入是否成功,方便...

    Facebook大量数据处理 Scribe.zip

    5. **灵活性**:Scribe支持多种数据处理后端,如HDFS(Hadoop分布式文件系统)、Kafka等,这使得数据可以方便地与其他大数据处理框架集成。 **Scribe的使用场景** 1. **日志聚合**:在分布式环境中,各个节点产生...

    scribe-apache-1.5.0.zip

    Scribe的工作原理是接收来自多个来源的日志数据,并将这些数据转发到一个或多个中央存储系统,如Hadoop HDFS、Cassandra或任何自定义的存储解决方案。它支持多种协议,如TCP、UDP和HTTP,以适应不同的应用场景。通过...

    开源日志系统比较:scribe、chukwa、kafka、flume.pdf

    scribe agent负责接收并发送数据,scribe server则根据配置将不同主题的数据转发至相应的存储系统,支持多种存储类型如HDFS、文件系统等。 2. Apache的Chukwa Chukwa是Apache基金会的一个项目,与Hadoop生态系统...

    开源日志系统比较:scribe、chukwa、kafka、flume.docx

    - **Scribe Server**:接收来自Agent的数据,根据预设规则将不同主题的数据分发给相应的存储系统,支持多种存储选项如文件、HDFS等。 - **存储系统**:包括多种存储后端,如file、buffer、network、bucket等,提供...

    开源日志系统比较.pdf

    - scribe server:接收来自agent的数据,根据预设规则分发到不同的存储系统,支持多种存储选项,如文件、HDFS等。 - 存储系统:支持多种存储后端,如文件系统、网络存储或HDFS,提供容错机制,如在存储系统故障时...

    【推荐】开源日志系统-word范文模板 (17页).pdf

    Scribe的架构由scribe agent、scribe server和存储系统三部分组成,其中scribe agent负责接收日志数据,server则负责转发和存储。 2. Apache的Chukwa Chukwa是Apache基金会的一个项目,设计用于收集、存储和分析...

    【推荐】开源日志系统-word范文模板 (17页).docx

    scribe agent通过Thrift接口向scribe server发送数据,而scribe server则根据配置将不同主题的数据分发到不同的存储系统。 2. Apache的Chukwa Chukwa是Apache基金会的一个项目,与Hadoop生态系统紧密集成,利用HDFS...

    开源日志系统比较.docx

    - **HDFS存储**:使用HDFS作为默认存储,但HDFS并不完全适合高并发低速率的日志写入,因此Chukwa引入了agent和collector来优化这一过程。 - **数据处理**:Chukwa的Demux和achieving功能,配合MapReduce,可以直接对...

    基于Flume的美团日志收集系统.pdf

    | Store | 丰富,可以直接写 HDFS、te*t、console、TCP 等 | 丰富,可以直接写 HDFS 等 | 三、美团日志收集系统架构 美团的日志收集系统基于 Flume 设计和搭建而成,负责美团的所有业务日志的收集,并分别给 ...

    大数据工作流程.ppt

    此外,HBase是一个基于HDFS的NoSQL数据库,适用于存储海量结构化数据,而Hive则是一个数据仓库工具,允许用SQL语言查询HDFS中的数据。 4. **数据分析挖掘**: 分析阶段通常涉及使用工具如Hive进行查询和统计分析,...

    基于Flume的美团日志收集系统方案.doc

    它还拥有丰富的Agent类型,如avro、thrift、socket、text、tail等,以及多样化的Store选项,例如hdfs、text、console、tcp,支持写入HDFS时的缓冲和网络优化。 在系统架构上,美团的日志收集系统采用了三层模型:...

    亿级大数据实时分析平台.pptx

    小米的数据统计分析平台架构包括LVS/NGINX Analytics Server、Scribe Log、HDFS、Kafka、Storm、MapReduce、Spark、HBase、MySQL、ES Query Server和Redis等组件。HBase因其天生适合大数据处理、灵活的Schema变更、...

    Facebook大量相似高速数据实时日志收集系统

    - **Continuous Copier/Loader**:负责将数据从一个HDFS复制到另一个HDFS,或者加载到Hive表中。 #### 面临的挑战与解决方案 **挑战**: 1. **可扩展性**:数据量巨大,达到了1GB-10GB/秒。 2. **可靠性**:需要...

    大数据工作流程PPT课件.pptx

    在大数据环境中,由于数据量巨大,通常使用分布式数据采集工具,例如Chukwa、Flume和Scribe。Chukwa是Hadoop生态系统的一部分,专门用于大型分布式系统的日志数据收集。这些工具能够高效地处理和传输海量数据。 2. ...

    2大数据介绍.pptx

    数据采集阶段,利用如Chukwa、Flume或Scribe等工具,对来自各种异构数据源的海量数据进行收集和传输。数据预处理涉及数据清洗、转换,如使用Sqoop将数据从SQL转移到HDFS、HIVE或HBase中。数据存储环节,HDFS作为...

Global site tag (gtag.js) - Google Analytics