不说过程了,直接说结果!一对相连接的channel-HdfsSink,无意间配置如下:...agent.channels.common-channel.transactionCapacity=10...agent.sinks.hdfs-sink.hdfs.batchSize=20 简单测试之后发现flume报如下异常,倒也正常…… [2015-12-17 11:42:09:694 ERROR][org.apache.flume.sink.hdfs.HDFSEventSink.process(HD…
1 错误详细信息 WARN conf.FlumeConfiguration: Could not configure sink k1 due to: Channel c1 not in active set. org.apache.flume.conf.ConfigurationException: Channel c1 not in active set. at org.apache.flume.conf.FlumeConfiguration$AgentConfiguration.valida…
[从源码学设计] Flume 之 memory channel 目录 [从源码学设计] Flume 之 memory channel 0x00 摘要 0x01 业务范畴 1.1 用途和特点 1.2 Channel 1.3 研究重点 1.4 实际能够学到什么 1.5 总述 0x02 定义 2.1 接口 2.2 配置参数 2.2.1 channel属性 2.4 Semaphore和Queue 2.5 MemoryTransaction 0x03 使用 3.1 channel如何使用 3.2 sour…
背景:利用kafka+flume+morphline+solr做实时统计. solr从12月23号开始一直没有数据.查看日志发现,因为有一个同事加了一条格式错误的埋点数据,导致大量error. 据推断,是因为使用mem channel占满,消息来不及处理,导致新来的数据都丢失了. 修改flume使用file channel: kafka2solr.sources = source_from_kafka kafka2solr.channels = file_channel kafka2solr.s…
Hadoop生态圈-Flume的主流Channel源配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.   一. 二. 三.…
一. fluem中出现,transactionCapacity查询一下,得出一下这些: 最近在做flume的实时日志收集,用flume默认的配置后,发现不是完全实时的,于是看了一下,原来是memeryChannel的transactionCapacity在作怪,因为他默认是100,也就是说收集端的sink会在收集到了100条以后再去提交事务(即发送到下一个目的地),于是我修改了transactionCapacity到10,想看看是不是会更加实时一点,结果发现收集日志的agent启动的时候报错了.…
1 官网内容 上面的配置是r1获取到的内容会同时复制到c1 c2 c3 三个channel里面 2 详细配置信息 # Name the components on this agent a1.sources = r1 a1.sinks = k1 k2 a1.channels = c1 c2 # Describe/configure the source a1.sources.r1.type = exec a1.sources.r1.command = tail -F /tmp/logs/cmcc…
1 官网内容 上面配置的是根据不同的heder当中state值走不同的channels,如果是CZ就走c1 如果是US就走c2 c3 其他默认走c4 2 我的详细配置信息 一个监听http端口 然后 配置两个channel,根据不同的Header中的state值走不同的channel 监听source的配置 #配置文件: a1.sources= r1 a1.sinks= k1 k2 a1.channels= c1 c2 #Describe/configure the source a1.sour…
今天在部署flume集群时,在启动collector服务器没报错,启动agent服务器报错: File Channel transaction capacity cannot be greater than the capacity of the  channel capacity 查了下相关解决办法,将配置文件中的 agent.channels.memoryChannel.capacity = 1000调整为 agent.channels.memoryChannel.capacity = 10…
本次遇到的问题描述,日志采集同步时,当单条日志(日志文件中一行日志)超过2M大小,数据无法采集同步到kafka,分析后,共踩到如下几个坑.1.flume采集时,通过shell+EXEC(tail -F xxx.log 的方式) source来获取日志时,当单条日志过大超过1M时,source端无法从日志中获取到Event.2.日志超过1M后,flume的kafka sink 作为生产者发送给日志给kafka失败,kafka无法收到消息.以下针对踩的这两个坑做分析,flume 我使用的是1.9.0…
基于ThriftSource,MemoryChannel,HdfsSink三个组件,对Flume数据传输的事务进行分析,如果使用的是其他组件,Flume事务具体的处理方式将会不同. Flume的事务处理原理: Flume在对Channel进行Put和Take操作的时候,必须要用事物包住,比如: Channel ch = new MemoryChannel(); Transaction txn = ch.getTransaction(); //事物开始 txn.begin(); try { Eve…
翻译自官网flume1.8用户指南,原文地址:Flume 1.8.0 User Guide 篇幅限制,分为以下5篇: [翻译]Flume 1.8.0 User Guide(用户指南) [翻译]Flume 1.8.0 User Guide(用户指南) source [翻译]Flume 1.8.0 User Guide(用户指南) Sink [翻译]Flume 1.8.0 User Guide(用户指南) Channel [翻译]Flume 1.8.0 User Guide(用户指南) Proces…
最近一段时间,负责公司的产品日志埋点与收集工作,搭建了基于Flume+HDFS+Hive日志搜集系统. 一.日志搜集系统架构: 简单画了一下日志搜集系统的架构图,可以看出,flume承担了agent与collector角色,HDFS承担了数据持久化存储的角色. 作者搭建的服务器是个demo版,只用到了一个flume_collector,数据只存储在HDFS.当然高可用的日志搜集处理系统架构是需要多台flume collector做负载均衡与容错处理的. 二.日志产生: 1.log4j配置,每隔1…
原文链接:[转]Flume NG 配置详解 (说明,名词对应解释 源-Source,接收器-Sink,通道-Channel) 配置 设置代理 Flume代理配置存储在本地配置文件.这是一个文本文件格式,是Java属性文件格式.在相同的配置文件,可以指定一个或多个代理的配置.配置文件包括每个源,接收器和通道,把它们连接在一起,形成数据流. 配置单个组件 流中每个组件(源,接收器或通道)都有名称,类型,和一组特定实例的属性.例如,Avro源需要一个接收数据的主机名(或IP地址)和端口号.一个内存通道…
来自:http://caiguangguang.blog.51cto.com/1652935/1384187 flume bucketpath的bug一例 测试的配置文件: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 agent-server1.sources= testtail agent-server1.sinks = hdfs-sink agent-server1.channels=…
配置 设置代理 Flume代理配置存储在本地配置文件.这是一个文本文件格式,是Java属性文件格式.在相同的配置文件,可以指定一个或多个代理的配置.配置文件包括每个源,接收器和通道,把它们连接在一起,形成数据流. 配置单个组件 流中每个组件(源,接收器或通道)都有名称,类型,和一组特定实例的属性.例如,Avro源需要一个接收数据的主机名(或IP地址)和端口号.一个内存通道可以有最大队列大小(“能力”),HDFS的Sink需要知道文件系统的URI,路径创建文件,文件的创建频率(“hdfs.roll…
不多说,直接上干货! 一.自定义拦截器类型必须是:类全名$内部类名,其实就是内部类名称 如:zhouls.bigdata.MySearchAndReplaceInterceptor$Builder 二.为什么这样写 至于为什么这样写:是因为Interceptor接口还有一个 公共的内部接口(Builder) ,所以自定义拦截器 要是实现 Builder接口, 也就是实现一个内部类(该内部类的主要作用是:获取flume-conf.properties 自定义的 参数,并将参数传递给 自定义拦截器)…
Photo by Janke Laskowski on Unsplash 参考书籍:<Flume构建高可用.可扩展的海量日志采集系统> --Hari Shreedharan 著 以下简称"参考书籍",文中部分资料和图片会标注引用自书中.官方文档简称"官文". 文章为个人从零开始学习记录,如有错误,还请不吝赐教. Flume 初见 ### · 简介 ### Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集.聚合和传输的系统,可…
一.架构方案如下图: 二.各个组件的安装方案如下: 1).zookeeper+kafka http://www.cnblogs.com/super-d2/p/4534323.html 2)hbase http://www.cnblogs.com/super-d2/p/4755932.html 3)flume安装: 安装 安装JDK Flume 运行系统要求1.6以上的Java 运行环境,从oracle网站下载JDK 安装包,解压安装: $tar zxvf jdk-8u65-linux-x64.t…
新项目中需要使用到hadoop和vertica,使用flume把数据加载到hadoop中,我做了一个例子, 即监控一个sharefolder,如果里面有文件,则会文件load到hadoop. 开启Flume agent: ./flume-ng agent -n agent-1  -c conf -f /home/yaxiaohu/flumeconf/evantest.conf 以下内容是evantest.conf agent-1.channels = ch-1 agent-1.sources =…
本文基于ThriftSource,MemoryChannel,HdfsSink三个组件,对Flume数据传输的事务进行分析,如果使用的是其他组件,Flume事务具体的处理方式将会不同.一般情况下,用MemoryChannel就好了,我们公司用的就是这个,FileChannel速度慢,虽然提供日志级别的数据恢复,但是一般情况下,不断电MemoryChannel是不会丢数据的. Flume提供事物操作,保证用户的数据的可靠性,主要体现在: 数据在传输到下个节点时(通常是批量数据),如果接收节点出现异…
在<基于Flume的美团日志收集系统(一)架构和设计>中,我们详述了基于Flume的美团日志收集系统的架构设计,以及为什么做这样的设计.在本节中,我们将会讲述在实际部署和使用过程中遇到的问题,对Flume的功能改进和对系统做的优化. 1 Flume的问题总结 在Flume的使用过程中,遇到的主要问题如下: a. Channel“水土不服”:使用固定大小的MemoryChannel在日志高峰时常报队列大小不够的异常:使用FileChannel又导致IO繁忙的问题: b. HdfsSink的性能问…
Flume传输数据事务分析 本文基于ThriftSource,MemoryChannel,HdfsSink三个组件,对Flume传输数据的事务进行分析.假设使用的是其它组件.Flume事务详细的处理方式将会不同.普通情况下.用MemoryChannel就好了,我们公司用的就是这个.FileChannel速度慢,尽管提供日志级别的数据恢复,可是普通情况下,不断电MemoryChannel是不会丢数据的. Flume提供事物操作.保证用户的数据的可靠性,主要体如今: 数据在传输到下个节点时(一般是批…
#source的名字 agent.sources = kafkaSource # channels的名字,建议按照type来命名 agent.channels = memoryChannel # sink的名字,建议按照目标来命名 agent.sinks = hdfsSink # 指定source使用的channel名字 agent.sources.kafkaSource.channels = memoryChannel # 指定sink需要使用的channel的名字,注意这里是channel…
Flume支持众多的source和sink类型,详细手册可参考官方文档,更多source和sink组件 http://flume.apache.org/FlumeUserGuide.html Flume官网入门指南: 1:Flume的概述和介绍: (1):Flume是一个分布式.可靠.和高可用的海量日志采集.聚合和传输的系统.(2):Flume可以采集文件,socket数据包等各种形式源数据,又可以将采集到的数据输出到HDFS.hbase.hive.kafka等众多外部存储系统中(3):一般的采…
1. flume简介 flume 作为 cloudera 开发的实时日志收集系统,受到了业界的认可与广泛应用.Flume 初始的发行版本目前被统称为 Flume OG(original generation),属于 cloudera.但随着 FLume 功能的扩展,Flume OG 代码工程臃肿.核心组件设计不合理.核心配置不标准等缺点暴露出来,尤其是在 Flume OG 的最后一个发行版本 0.94.0 中,日志传输不稳定的现象尤为严重,为了解决这些问题,2011 年 10 月 22 号,cl…
The new integration between Flume and Kafka offers sub-second-latency event processing without the need for dedicated infrastructure. In this previous post you learned some Apache Kafka basics and explored a scenario for using Kafka in an online appl…
应用一:kafka数据同步到kudu 1 准备kafka topic # bin/kafka-topics.sh --zookeeper $zk:2181/kafka -create --topic test_sync --partitions 2 --replication-factor 2 WARNING: Due to limitations in metric names, topics with a period ('.') or underscore ('_') could coll…
对于企业中常用的flume type 概括如下:ource(获取数据源): exec (文件) spoolingdir (文件夹) taildir(文件夹及文件的变动) kafka syslog http channel(管道): mem file kafka sink(将channel中的 数据发送到目标地址): hdfs hive hbase ES 从集群可用性,可靠性,可扩展性和兼容性等方面,对架构优化进行设计. 1.可用性(availablity) 可用性(availablity)指固定…
package com.test; import org.apache.http.*;import org.apache.http.entity.ContentType;import org.apache.http.entity.StringEntity;import org.apache.http.impl.DefaultBHttpClientConnection;import org.apache.http.impl.DefaultConnectionReuseStrategy;import…