Flume的安装与配置

一、       资源下载

资源地址:http://flume.apache.org/download.html

程序地址:http://apache.fayea.com/flume/1.6.0/apache-flume-1.6.0-bin.tar.gz

源码地址:http://mirrors.hust.edu.cn/apache/flume/1.6.0/apache-flume-1.6.0-src.tar.gz

二、       安装搭建

(1)编译好的包:

直接在安装目录解压即可(重命名可选)

cd /usr/local/

tar –zxvf apache-flume-1.6.0-bin.tar.gz

mv apache-flume-1.6.0-bin flume

(2)源码编译安装:

这种方法比较麻烦,要把需要的包都下载全,然后用以下命令编译:

  1. 只进行编译:mvn clean compile
  2. 编译并且执行单元测试:mvn clean test
  3. 单独运行单元测试: mvn clean test -Dtest=<Test1>,<Test2>,... -DfailIfNoTests=false
  4. 创建压缩包: mvn clean install
  5. 跳过单元测试创建压缩包: mvn clean install –DskipTests

编译完成之后,和直接运行可执行包的

三、       运行与配置

(1)flume的配置

# example.conf: A single-node Flume configuration

# Name the components on this agent

a1.sources = r1

a1.sinks = k1

a1.channels = c1

# Describe/configure the source

a1.sources.r1.type = exec

a1.sources.r1.command = tail -F /flume/test.log

# Describe the sink

a1.sinks.k1.type = hdfs

# Use a channel which buffers events in memory

a1.channels.c1.type = memory

a1.channels.c1.capacity = 1000

a1.channels.c1.transactionCapacity = 100

a1.sinks.k1.hdfs.path=hdfs://192.168.15.135:9000/flume/events/%y-%m-%d/%H%M/%S

a1.sinks.k1.hdfs.filePrefix = events-

a1.sinks.k1.hdfs.round = true

a1.sinks.k1.hdfs.roundValue = 10

a1.sinks.k1.hdfs.roundUnit = minute

a1.sinks.k1.hdfs.useLocalTimeStamp = true

# Bind the source and sink to the channel

a1.sources.r1.channels = c1

a1.sinks.k1.channel = c1

配置文件分为四个部分source、sink、channel和它们之间的关联关系;flume之间模块的关系如下图:

如图:source是负责从WebServer收集数据信息,Sink负责将收集和格式化后的日志写入到磁盘、其他文件系统或其他日志系统,channel是负责连接source和sink。因为有channel的存在,所以source和sink是多对多的关系。

# example.conf: A single-node Flume configuration

# Name the components on this agent

a1是代理的名字

a1.sources = r1

定义一个source:r1

a1.sinks = k1

定义一个sink:k1

a1.channels = c1

定义一个channel:c1

# Describe/configure the source

a1.sources.r1.type = exec

a1的r1的类型为exec(执行类型)

a1.sources.r1.command = tail -F /flume/test.log

a1的r1要执行的命令为tail一个test.log

# Describe the sink

a1.sinks.k1.type = hdfs

a1的sink类型为hdfs

# Use a channel which buffers events in memory

a1.channels.c1.type = memory

a1的channel的类型为存在内存

a1.channels.c1.capacity = 1000

a1的容量为1000

a1.channels.c1.transactionCapacity = 100

a1的交互容量为100

a1.sinks.k1.hdfs.path=hdfs://192.168.15.135:9000/flume/events/%y-%m-%d/%H%M/%S

a1的叫k1的sink的最终存储的文件系统的路径是:hdfs://……

a1.sinks.k1.hdfs.filePrefix = events-

sink在存储文件的时候的前缀为event-

a1.sinks.k1.hdfs.round = true

hdfs配置项

a1.sinks.k1.hdfs.roundValue = 10

hdfs配置项

a1.sinks.k1.hdfs.roundUnit = minute

hdfs配置项

a1.sinks.k1.hdfs.useLocalTimeStamp = true

将用本地时间戳设置为true

# Bind the source and sink to the channel

a1.sources.r1.channels = c1

把source-r1绑定到channel-c1

a1.sinks.k1.channel = c1

把sink-k1绑定到channel-c1

(2)flume的运行方法为:

$ bin/flume-ng agent -n $agent_name -c conf -f conf/flume-conf.properties

-n  指定代理(agent)名字;

-c  conf指定配置文件的目录(主要是日志等其他配置文件的目录);

-f  本次运行的flume的配置文件,需要添加路径(模式是在工程的根路径flume/)

执行命令例如:

$ bin/flume-ng agent -n a1 -c conf -f conf/example.conf

执行成功之后,我们可以在logs的flume.log中看到日志。

另外,还可以用以下方式启动,来指定日志输出:

$ bin/flume-ng agent --conf conf --conf-file example.conf --name a1 -Dflume.root.logger=INFO,console

--conf :与-c相同;

--conf-file :与-f相同;

--name:与-n相同;

flume.root.logger:指定日志级别和显示方式,上述命令为INFO,输出到终端;如果没有此项,像之前的命令一样,默认的级别是INFO,输出到LOGFILE。

四、       备注

(1)可选的source有:

(2)可选的sink有:

详细配置参考:http://flume.apache.org/FlumeUserGuide.html#flume-sources

Flume的安装与配置的更多相关文章

  1. Flume的安装,配置及使用

    1,上传jar包 2,解压 3,改名 4,更改配置文件 将template文件重镜像 root@Ubuntu-1:/usr/local/apache-flume/conf# cat flume-env ...

  2. Flume简介与使用(一)——Flume安装与配置

    Flume简介与使用(一)——Flume安装与配置 Flume简介 Flume是一个分布式的.可靠的.实用的服务——从不同的数据源高效的采集.整合.移动海量数据. 分布式:可以多台机器同时运行采集数据 ...

  3. CentOS6安装各种大数据软件 第七章:Flume安装与配置

    相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...

  4. 使用Windows Azure的VM安装和配置CDH搭建Hadoop集群

    本文主要内容是使用Windows Azure的VIRTUAL MACHINES和NETWORKS服务安装CDH (Cloudera Distribution Including Apache Hado ...

  5. Flume NG简介及配置

    Flume下载地址:http://apache.fayea.com/flume/ 常用的分布式日志收集系统: Apache Flume. Facebook Scribe. Apache Chukwa ...

  6. 浅谈 zookeeper 原理,安装和配置

    当前云计算流行, 单一机器额的处理能力已经不能满足我们的需求,不得不采用大量的服务集群.服务集群对外提供服务的过程中,有很多的配置需要随时更新,服务间需要协调工作,那么这些信息如何推送到各个节点?并且 ...

  7. 一脸懵逼学习基于CentOs的Hadoop集群安装与配置

    1:Hadoop分布式计算平台是由Apache软件基金会开发的一个开源分布式计算平台.以Hadoop分布式文件系统(HDFS)和MapReduce(Google MapReduce的开源实现)为核心的 ...

  8. 日志采集框架Flume以及Flume的安装部署(一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统)

    Flume支持众多的source和sink类型,详细手册可参考官方文档,更多source和sink组件 http://flume.apache.org/FlumeUserGuide.html Flum ...

  9. 一脸懵逼学习基于CentOs的Hadoop集群安装与配置(三台机器跑集群)

    1:Hadoop分布式计算平台是由Apache软件基金会开发的一个开源分布式计算平台.以Hadoop分布式文件系统(HDFS)和MapReduce(Google MapReduce的开源实现)为核心的 ...

随机推荐

  1. windows 注册表编程

    例子:将本地计算机的Monitor ID写入到注册表中 (1)获取MonitorID BOOLEAN DeviceMonitorService::EnumClassDevice(const GUID ...

  2. Mysql中的触发器

    什么是触发器 简单的说,就是一张表发生了某件事(插入.删除.更新操作),然后自动触发了预先编写好的若干条SQL语句的执行: 特点及作用 特点:触发事件的操作和触发器里的SQL语句是一个事务操作,具有原 ...

  3. 每日Scrum--No.4

    Yesterday:学习迪杰斯特拉算法并进行简单的编写代码 Today:继续编写代码 Problem:变量名的定义出错,造成调用的时候出错,不过改过来就好了.算法的编写不全面,漏掉个别语句,如在调试的 ...

  4. 在js中获取get参数(仿PHP)

    复制粘贴即可..然后就可以在js中像PHP用$_GET['name']这样子获取get参数了!! /*--------------------(返回 $_GET 对象, 仿PHP模式)-------- ...

  5. Spring依赖注入三种方式详解

    在讲解Spring依赖注入之前的准备工作: 下载包含Spring的工具jar包的压缩包 解压缩下载下来的Spring压缩包文件 解压缩之后我们会看到libs文件夹下有许多jar包,而我们只需要其中的c ...

  6. MTOM以及在WCF中的应用

    关于MTOM的基本概念 提到MTOM消息优化传输机制,通常的实验结果是使用MTOM传输数据会提高大约33%的性能. 消息传输优化机制 (MTOM) 标准允许将消息中包含的大型数据元素外部化,并将其作为 ...

  7. 百度推出的echarts,制表折线图柱状图饼图等的超级工具(转)

    一.简介: 1.绘制数据图表,有了它,想要网页上绘制个折线图.柱状图,从此easy. 2.使用这个百度的echarts.js插件,是通过把图片绘制在canvas上在显示在页面上. 官网对echarts ...

  8. 【原创】大众点评监控平台cat的性能分析

    由于工作的原因,或者说我们之前内部监控设计和实现有点不满足现有的研发需求,所以调研了一下大众点评开源出来的cat这一套监控系统. 今天我们就来实验一把,cat的客户端埋点在我们的程序流程中上报数据到c ...

  9. 04_最长上升子序列问题(LIS)

    来源:刘汝佳<算法竞赛入门经典--训练指南> P60 问题6: 问题描述:给定n个整数a1,a2,...,an,按从左到右的顺序选出尽量多的整数,组成一个上升子序列(子序列可以理解为:删除 ...

  10. Java dynamical proxy demo

    今天练习了一下动态代理的一个方面,假设使用它来完成自动设置默认不提交,启动事务,获取到异常则回滚,正常执行则提交. 如果不使用动态代理,则需要在每个方法本身里面设置Connection,写try,ca ...