关于Flume-ng那些事(一)

前言 落群好久,一直潜水,实在抹不开了,为ttlsa做点贡献。这个群是我见到所有技术群里扯淡最少的群。支持下,谢谢群主默北和管理员白开水为我们开辟一块学习的净土。希望ttlsa走的更远,各位同学在技术更上一层楼。我们的口号是有困难找群主!!! :),文章是去年2012年写的,现整理如下: 介绍 Flume-ng  在官方网站上说的重大结构性调整,以至于调整的连相应文档也都精简了,缺少实例配置,也许这就所谓的官方声称的孵化阶段。Apache Flume 是一个分布的,高可靠和高可用的日志收集系统。能将从不同节点将大量日志数据进行汇总并迁移到中央存储。现在flume分为两个版本1.x.x 和0.9.x。

Flume 1.x.x一些特性

  • sources和sinks 使用channels 进行链接
  • 两个主要channel 。1,  in-memory channel  非持久性支持,速度快。2 , JDBC-based channel 持久性支持。
  • 不再区分逻辑和物理node,所有物理节点统称为 "agents",每个agents 都能运行0个或多个sources 和sinks
  • 不再需要master节点和对zookeeper的依赖,配置文件简单化。
  • 插件化,一部分面对用户,工具或系统开发人员。
  • 使用Thrift、Avro Flume sources 可以从flume0.9.4 发送 events  到flume 1.x

让我们开始我们的Flume-ng 之旅吧

安装依赖关系 [info]Note: The Flume 1.x flume-ng-agent package directly depends only on flume-ng package. Theflume-ng package directly depends only on hadoop-hdfs and bigtop-utils packages. Theflume-ng-doc package has no direct package dependencies.[/info]
#yum install jdk
#yum install flume-ng
Dependencies Resolved
==========================================================================================================================
Package                    Arch                 Version                                       Repository            Size
==========================================================================================================================
Installing:
flume-ng                   noarch               1.1.0+120-1.cdh4.0.0.p0.14.el5                hadoop                11 M
Installing for dependencies:
bigtop-jsvc                x86_64               0.4+299-1.cdh4.0.0.p0.27.el5                  hadoop                29 k
bigtop-utils               noarch               0.4+299-1.cdh4.0.0.p0.27.el5                  hadoop               7.3 k
hadoop                     x86_64               2.0.0+88-1.cdh4.0.0.p0.26.el5                 hadoop                18 M
hadoop-hdfs                x86_64               2.0.0+88-1.cdh4.0.0.p0.26.el5                 hadoop               8.8 M
zookeeper                  noarch               3.4.3+14-1.cdh4.0.0.p0.27.el5                 hadoop               3.9 M
-
Transaction Summary
==========================================================================================================================
Install       6 Package(s)
需要装好多包 -  -! 使用cloudera tar.gz 包
# wget <a href="http://archive.cloudera.com/cdh4/cdh/4/flume-ng-1.1.0-cdh4.0.0.tar.gz" rel="nofollow">http://archive.cloudera.com/cdh4/cdh/4/flume-ng-1.1.0-cdh4.0.0.tar.gz</a>
# cp <a href="http://archive.cloudera.com/cdh4/cdh/4/flume-ng-1.1.0-cdh4.0.0.tar.gz" rel="nofollow">flume-ng-1.1.0-cdh4.0.0.tar.gz</a>  /opt/apps_install; cd /opt/apps_install; tar xzvf <a href="http://archive.cloudera.com/cdh4/cdh/4/flume-ng-1.1.0-cdh4.0.0.tar.gz" rel="nofollow">flume-ng-1.1.0-cdh4.0.0.tar.gz</a>
# ln -s /opt/apps_install/flume-1.1.0-cdh4.0.0/ /opt/apps/flume-ng
# cd /opt/apps/flume-ng/conf
让我们更改flume-env.sh添加JAVA_HOME
echo $JAVA_HOME
/opt/apps/jdk
echo  JAVA_HOME=/opt/apps/jdk >> flume-env.sh
一些概念
组件 功能
Agent 使用JVM 运行Flume。每台机器运行一个agent,但是可以在一个agent中包含多个sources和sinks。
Client 生产数据,运行在一个独立的线程。
Source 从Client收集数据,传递给Channel。
Sink 从Channel收集数据,运行在一个独立线程。
Channel 连接 sources 和 sinks ,这个有点像一个队列。
 Events  可以是日志记录、 avro 对象等。
转载请注明出处:http://www.ttlsa.com/html/2754.html

你可能感兴趣的:(hadoop,flume-ng)