flume安装及配置
Flume安装
介绍
Flume本身的安装比较简单(flume的介绍请参考http://blog.csdn.net/rzhzhz/article/details/7448633),安装前先说明几个概念,先看flume的架构

1. Flume分三种角色
Mater: master负责配置及通信管理,是集群的控制器。
Collector: collector用于对数据进行聚合,往往会产生一个更大的流,然后加载到storage中。
Agent: Agent用于采集数据,agent是flume中产生数据流的地方,同时,agent会将产生的数据流传输到collector
2. Collector和Agent的配置数据必须指定Source(可以理解为数据入口)和Sink(可以理解为数据出口)
常用的source如:
text(“filename”):将文件filename作为数据源,按行发送
tail(“filename”):探测filename新产生的数据,按行发送出去
fsyslogTcp(5140):监听TCP的5140端口,并且接收到的数据发送出去
常用的sink如:
console[("format")] :直接将将数据显示在桌面上
text(“txtfile”):将数据写到文件txtfile中
dfs(“dfsfile”):将数据写到HDFS上的dfsfile文件中
syslogTcp(“host”,port):将数据通过TCP传递给host节点
具体介绍可以参考
http://blog.csdn.net/rzhzhz/article/details/7457956
http://blog.csdn.net/rzhzhz/article/details/7449662
安装
1. 下载解压安装
a) Flume的下载地址http://archive.cloudera.com/cdh/3/
b) 这里所说的安装包括jdk,flume本身及zookeeper的安装,这里就不再赘述jdk的安装过程。Zookeeper集群安装请参考http://blog.csdn.net/rzhzhz/article/details/7448894
c) 把下载好的flume包解压到相应位置(flume集群每台机器都需安装),以下以$FLUME_HOME代替安装路径,至于以哪个用户安装按本身实际情况而定。
d) 我们暂且先配置一个master,一个collector,一个agent,主机名对应如下
Mater: master
Collector : collector
Agent : agent
2. 配置相关路径
a) 这里要配置相关路径无非也就是因为flume在启动的时候如果依赖到相关软件(如java,hadoop,zookeeper)时会去其根目录下加载jar包和去conf目录下加载配置文件
b) 我习惯在/etc/profile下配置export,当然你也可以去$FLUME_HOME/bin目录下flume-env.sh配置(由flume-env.sh.template改名而成)
配置大致如下(内容仅供参考,加载过程大家可参考$FLUME_HOME/bin/flume脚本内容)
|
#Java export JAVA_HOME=/usr/java/jdk1.6.0_25 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin #hadoop export HADOOP_HOME=/usr/local/hadoop export PATH=$PATH:$HADOOP_HOME/bin #zookeeper export ZOOKEEPER_HOME=/usr/local/zookeeper export PATH=$PATH:$ZOOKEEPER_HOME/bin #flume export FLUME_HOME=/usr/local/flume export FLUME_CONF_DIR=$FLUME_HOME/conf export PATH=$PATH:$FLUME_HOME/bin |
3. 修改配置文件
a) $FLUME_HOME/conf目录下本身有flume-conf.xml和flume-site.xml.template两个文件,flume-conf.xml是默认的配置文件,虽说也可以修改,但不建议修改,用户配置应该在flume-site.xml(由flume-site.xml.template改名而成)文件中(即相当于覆盖flume-conf.xml文件中的原有配置)。flume-site.xml文件应该是针对节点在集群中的不同角色而做不同的修改(详细的配置参数可以参考flume-conf.xml,针对不同角色做了分门别类,一目了然),这里就不具体描述了,可参考http://blog.csdn.net/rzhzhz/article/details/7457956。
b) Collector和Agent的用户配置文件中flume-site.xml必须指定master的地址flume.master.servers,如下:
|
<property> <name>flume.master.servers</name> <value>master</value> </property> |
4. 启动zookeeper集群
a) 这里zookeeper集群会在master的配置文件里配置。
|
<property> <name>flume.master.zk.use.external</name> <value>true</value> </property> <property> <name>flume.master.zk.servers</name> <value>master:2181,collector:2181,agent:2181</value> </property> |
flume.master.zk.use.external 是否使用外部zookeeper集群
flume.master.zk.servers zookeeper集群地址
b) 如果不配置则使用flume内部提供的zookeeper。flume使用使用zookeeper进行管理和负载均衡.
c) 关于zookeeper保存的master的配置数据是可以配置(flume.master.store)的,可以选择存在zookeeper中(zookeeper),也可以选择存储在内存中(memory)
5. 启动master,collector,Agent
a) 启动master: flume master
b) 启动node(collector): flume node_nowatch
c) 启动node(agent): flume node_nowatch
后两者的启动方式是一样的,只是在配置参数中有所差异
启动node的时候可以选择指定node的名字的参数 -n ,默认为主机名
如(flume node_nowatch –n node1)
6. 查看
a) Web查看
Master :
http://master:35871/flumemaster.jsp
可以在master页面查看和配置node参数
node :
http://collector:35862/flumeagent.jsp
http://agent:35862/flumeagent.jsp
单机部署的时候,如果启动了多个node,则端口以此增加(如35863,35864)
b) Shell连接(简略介绍下,更详细的命令请参考help)
flume shell
collect master
7. 在master修改节点配置
a) 这里我们其实可以这样先易后难,不要一开始就弄复杂的配置,这样很难定位错误,还有flume本身的错误基本就是在控制台输出,这与我们的调试思路有点违背,我们一般的查错首先都会想到日志文件,但它的日志文件实在是没什么东西
b) 配置界面大致如下

当然你也可以在shell端配置,此处就不多做介绍。
Web界面配置步骤如下
首先选择configure node选择要选择的node,或者指定不存在于list中的节点(or specify another node)
配置source
配置sink
提交
提交之后可以在master的界面查看是否成功,大致如下图

c) Collector配置
SOURCE: collectorSource(35853)
监听35853端口,接受agent发送的消息
SINK: collectorSink("file:///tmp/flume/collected","sink")
将数据加载到文件中
d) Agent配置
SOURCE: console
从控制台接受输入
SINK: agentE2ESink( "collector",35853 )
指定collector的名字及端口
下面简单介绍一下调试流程
首先我们可以这么配置 先配置最简单的source ,console(控制台输入)
最简单的sink,collectorSink("file:///tmp/flume/collected", "file")
然后看file:///tmp/flume/collected文件目录下是否有控制台输入的内容
调试成功后说明agent与collector是相通的。
再把source换成text或者其他再做调试
最后把sink换成hdfs或者hbase什么的
8. 配置生效(自动),查看结果
略
flume安装及配置的更多相关文章
- Flume简介与使用(一)——Flume安装与配置
Flume简介与使用(一)——Flume安装与配置 Flume简介 Flume是一个分布式的.可靠的.实用的服务——从不同的数据源高效的采集.整合.移动海量数据. 分布式:可以多台机器同时运行采集数据 ...
- CentOS6安装各种大数据软件 第七章:Flume安装与配置
相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...
- flume安装及配置介绍(二)
注: 环境: skylin-linux Flume的下载方式: wget http://www.apache.org/dyn/closer.lua/flume/1.6.0/apache-flume-1 ...
- Flume 安装和配置
安装步骤 1.安装jdk,1.6版本以上 2.上传flume的安装包 3.解压安装 4.在conf目录下,创建一个配置文件,比如:template.conf(名字可以不固定,后缀也可以不固定) 5.配 ...
- CentOS6安装各种大数据软件 第九章:Hue大数据可视化工具安装和配置
相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...
- CentOS6安装各种大数据软件 第八章:Hive安装和配置
相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...
- Flume的安装与配置
Flume的安装与配置 一. 资源下载 资源地址:http://flume.apache.org/download.html 程序地址:http://apache.fayea.com/fl ...
- 具体说明 Flume介绍、安装和配置
社论: 本文总结"Hadoop生态系统"中的当中一员--Apache Flume 写在前面二: 所用软件说明: 一.什么是Apache Flume 官网:Flume is a di ...
- 3.flume安装以及环境配置
1.安装jdk 我这里已经安装过了,这里就不演示了 2.安装flume 安装cdh版本的,http://archive.cloudera.com/cdh5/cdh/5/ 安装完毕之后,配置环境变量. ...
随机推荐
- Qt Quick 组件和动态创建的对象具体的解释
在<Qt Quick 事件处理之信号与槽>一文中介绍自己定义信号时,举了一个简单的样例.定义了一个颜色选择组件,当用户在组建内点击鼠标时,该组件会发出一个携带颜色值的信号,当时我使用 Co ...
- 背包问题 (DP)
利用记忆化数组.记dp[i][j]为根据rec的定义,从第i个物品开始挑选总重小于j时,总价值的最大值. 递推式: dp[i][j]=0 (j<w[i]) dp[i][j] dp[i][ ...
- 远程数据client交换器
不太繁忙的文本. 要被写入
- linux_之sed用法
sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以 将数据行进行替换.删除.新增.选取等特定工作,下面先了解一下sed的用法sed命令行格式为: sed ...
- 【转】Appium根据xpath获取控件实例随笔
原文地址:http://blog.csdn.net/zhubaitian/article/details/39754233 如文章<Appium基于安卓的各种FindElement的控件定位方法 ...
- BS导出csv文件的通用方法(.net)
最近把以前项目里用的导出文件的功能提取成了dll,通过读取Attribute来得到要导出的表头(没有支持多语言),使用时只要组织好要导出的数据,调用方法就好了,希望对大家有用. 使用时只需引用下载包里 ...
- 用Iconv应对NodeJs对称加密技术在汉字编码与NoSQL的一些坑洞
·起因 汉字编码技术在实际应用中总是会存在这样或者那样的问题,尤其是在一些热门NoSQL方面多少会遇到挑战.比方说Cassandra字符集还不直接支持GB2312,要想存储写汉字那可真是麻烦.当然这还 ...
- C++外观设计模式模式(三)
3.外观模式总结 引入了外观类.解除了客户类与子系统的耦合性.客户类不须要直接操作子系统,而是由外观类负责处理,对client而言是透明的,客户类仅仅须要操作外观类就能够了,符合"迪迷特法则 ...
- MongoDb的副本集搭建教程(个人操作笔记)
很多公司都在用MongoDb ,一直没有时间研究,最近好好的整了一下,做下笔记,直接上操作步骤,关于Mongodb的理论知识可以搜索其他资料,也可以联系我索取 mongoDB官方已经不建议使用主从模式 ...
- NSString 常用分类
#pragma mark 清空字符串中的空白字符 - (NSString *)trimString { return [self stringByTrimmingCharactersInSet:[NS ...