Flume NG安装部署及数据采集测试

转载请注明出处:http://www.cnblogs.com/xiaodf/

Flume作为日志收集工具,监控一个文件目录或者一个文件,当有新数据加入时,采集新数据发送给消息队列等。

1 安装部署Flume

若要采集数据节点的本地数据,每个节点都需要安装一个Flume工具,用来做数据采集。

1.1 下载并安装

到官网去下载最新版本的Flume

下载地址为:http://flume.apache.org/,目前最新版本为1.6.0,需要1.7及以上版本的JDK。

1、解压

tar -xzvf apache-flume-1.6.0-bin.tar.gz  -C /usr/local/

2、安装JDK1.7

如果节点上JDK版本低于1.7,需要安装1.7或以上版本的JDK

JDK 1.7 下载地址:

http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

在Flume目录下创建一个java目录,存放JDK

cd /usr/local/apache-flume-1.6.0-bin
mkdir java
cd java
tar -xzvf jdk-7u79-linux-x64.tar.gz

1.2 配置Flume系统参数

修改 flume-env.sh 配置文件,主要是JAVA_HOME变量设置

cd /usr/local/apache-flume-1.6.0-bin/conf
cp flume-env.sh.template flume-env.sh

在flume-env.sh里面设置FLUME_CLASSPATH变量和JAVA_HOME变量,

示例:

export JAVA_HOME=/usr/local/apache-flume-1.6.0-bin/java/jdk1.7.0_79
FLUME_CLASSPATH="/usr/local/apache-flume-1.6.0-bin/"

变量具体内容根据实际修改

1.3 添加Flume第三方依赖

此处自定义了一个flume拦截器,没有的话,可忽略此步。

添加第三方依赖包flume-plugins-1.0-SNAPSHOT.jar,此包实现了一个Flume拦截器,将Flume采集到的数据进行序列化、结构化等预处理,最后每条数据生成一条Event数据返回。

cd /usr/local/apache-flume-1.6.0-bin
mkdirplugins.d    --创建依赖目录,目录名必须为plugins.d
cdplugins.d
mkdirflume-plugins          --项目目录,目录名随意
cdflume-plugins
mkdirlib           --jar包目录,目录名必须为lib

将第三方jar包flume-plugins-1.0-SNAPSHOT.jar放在lib目录下

1.4 创建Flume agent配置文件

创建flume启动配置文件,指定source,channel,sink 3个组件内容。每个组件都有好几种配置选项,具体配置请查看Flume官网。

创建配置文件flume.conf,示例如下:

a1.sources = x1
a1.sinks = y1
a1.channels = z1
# Describe/configure thesource
a1.sources.x1.type =exec
a1.sources.x1.channels =z1
a1.sources.x1.command =tail -F /home/xdf/exec.txt
# Describe the sink
a1.sinks.y1.type =logger
# Use a channel whichbuffers events in memory
a1.channels.z1.type =memory
a1.channels.z1.capacity= 1000
a1.channels.z1.transactionCapacity= 100
# Bind the source andsink to the channel
a1.sources.x1.channels =z1
a1.sinks.y1.channel = z1

1.5 启动Flume Agent

进入Flume安装目录,开启agent。

cd /usr/local/apache-flume-1.6.0-bin
./bin/flume-ng agent--conf conf --conf-file flume.conf --name a3 -Dflume.root.logger=INFO,console

注意:-Dflume.root.logger=INFO,console仅为 debug 使用,请勿生产环境生搬硬套,否则大量的日志会返回到终端。-c/--conf 后跟配置目录,-f/--conf-file 后跟具体的配置文件,-n/--name 指定agent的名称。

1.6 测试

上面配置的example.conf文件,实现的功能是监控文件/home/xdf/exec.txt,

如果有新数据写入时,Flume就会采集到新数据并打印在控制台上。

测试用例:向/home/xdf/exec.txt文件中写入内容“hello flume”。

echo ‘hello flume‘>> /home/xdf/exec.txt

Flume 终端窗口此时会打印出如下信息,就表示成功了:

2015-06-3016:01:52,910 (SinkRunner-PollingRunner-DefaultSinkProcessor) [INFO -org.apache.flume.sink.LoggerSink.process(LoggerSink.java:94)]
 Event: {headers:{} body: 68 65 6C 6C 6F 20 66 6C 75 6D 65 hello flume }

至此,Flume安装部署完毕。

时间: 2024-08-02 10:53:35

Flume NG安装部署及数据采集测试的相关文章

02_ Flume的安装部署

一.Flume的安装部署: Flume的安装非常简单,只需要解压即可,当然,前提是已有hadoop环境 安装包的下载地址为:http://www-us.apache.org/dist/flume/1.7.0/apache-flume-1.7.0-bin.tar.gz 1. 上传安装包到数据源所在节点上; 2. 然后解压:tar -zxvf apache-flume-1.6.0-bin.tar.gz -C /usr/local/src/ 3. 然后进入flume的目录,修改conf下的flume-

Flume的安装部署

1.Flume的安装非常简单,只需要解压即可,当然,前提是已有hadoop环境 上传安装包到数据源所在节点上 然后解压  tar -zxvf apache-flume-1.6.0-bin.tar.gz 然后进入flume的目录,修改conf下的flume-env.sh,在里面配置JAVA_HOME 2.根据数据采集的需求配置采集方案,描述在配置文件中(文件名可任意自定义) 3.指定采集方案配置文件,在相应的节点上启动flume agent 先用一个最简单的例子来测试一下程序环境是否正常 1.先在

Flume的概述和安装部署

一.Flume概述 Flume是一种分布式.可靠且可用的服务,用于有效的收集.聚合和移动大量日志文件数据.Flume具有基于流数据流的简单灵活的框架,具有可靠的可靠性机制和许多故障转移和恢复机制,具有强大的容错能力.Flume使用简单的的可扩展数据模型,循环在线分析应用程序. 二.Flume的作用 数据的来源大致有三类: 1.爬虫 2.日志数据 =>使用Flume进行获取传输 3.传统数据库 =>使用Sqoop进行数据迁移 三.Flume架构 1.source:数据源 接收webser端的数据

2 安装部署flume

本文对flume进行安装部署 flume是什么?传送门:https://www.cnblogs.com/zhqin/p/12230301.html 0.要安装部署在日志所在的服务器,或者把日志发送到日志所在的节点上 安装前准备 1) Flume官网地址 http://flume.apache.org/ 2)文档查看地址 http://flume.apache.org/FlumeUserGuide.html 3)下载地址 http://archive.apache.org/dist/flume/

Flume 学习笔记之 Flume NG概述及单节点安装

Flume NG概述: Flume NG是一个分布式,高可用,可靠的系统,它能将不同的海量数据收集,移动并存储到一个数据存储系统中.轻量,配置简单,适用于各种日志收集,并支持 Failover和负载均衡.其中Agent包含Source,Channel和 Sink,三者组建了一个Agent.三者的职责如下所示: Source:用来消费(收集)数据源到Channel组件中 Channel:中转临时存储,保存所有Source组件信息 Sink:从Channel中读取,读取成功后会删除Channel中的

Flume安装部署

l Flume的安装非常简单上传安装包到数据源所在节点上然后解压 tar -zxvf apache-flume-1.6.0-bin.tar.gz然后进入flume的目录,修改conf下的flume-env.sh,在里面配置JAVA_HOMEl 根据数据采集需求配置采集方案,描述在配置文件中(文件名可任意自定义)l 指定采集方案配置文件,在相应的节点上启动flume agent先用一个最简单的例子来测试一下程序环境是否正常1.先在flume的conf目录下新建一个文件vi netcat-logge

测试必备技能系列6:软件安装部署是最基本的能力!

今天,老徐再来聊聊测试必备技能 必备技能系列6 软件安装部署,你必须会! 老徐简单陈述观点: 1. 对于刚入门的测试同学 或者还未入门的测试同学 刚开始工作,都是从功能测试开始 那工作之余呢? 当然是学点东西 2. 学习过程中,肯定有很多软件.工具需要自己部署安装摸索 否则,门都入不了,咋学? 3. 入门级,常见有哪些需要安装的? 1)虚拟机 2)linux服务器 3)基本环境部署:mysql jdk apache 等 4)数据库客户端工具 5)bug管理工具:jira等 6)其他,看具体想学的

Hive_初步见解,安装部署与测试

一.hive是什么东东 1. 个人理解 hive就是一个基于hdfs运行于MapReduce上的一个java项目, 这个项目封装了jdbc,根据hdfs编写了处理数据库的DDL/DML,自带的 二进制包内嵌Derby数据库,且默认使用Derby,简而言之,hive就是一个 帮助我们处理/分析数据的工具,不过这个工具却像namenode一样存储了 一份文件的元数据,这就有点像数据仓库的感觉 2. 架构 分为服务端.客户端,基于hadoop,运行在mapreduce,存储于hfds, 可与hbase

淘宝分布式 key/value 存储引擎Tair安装部署过程及Java客户端测试一例

目录 1. 简介 2. 安装步骤及问题小记 3. 部署配置 4. Java客户端测试 5. 参考资料 声明 1. 下面的安装部署基于Linux系统环境:centos 6(64位),其它Linux版本可能有所差异. 2. 网上有人说tair安装失败可能是因为gcc版本问题,高版本的gcc可能不支持某些特性导致安装失败,经过实验证明,该说法是错误的,tair安装失败有各种可能的原因但绝对与gcc版本无关,比如我的gcc开始版本为4.4.7,后来tair安装失败,我重新编译低版本的gcc(gcc4.1