![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Flume
文章平均质量分 84
qianshanding0708
精于此道、乐于此道、以此为生
展开
-
Flume + Keepalived构建高可用分布式采集系统
上一篇《Flume之Failover和Load balancing原理及实例》的实例的架构如下:10.0.1.76作为Client,通过exec获取nginx的日志信息,然后将数据传到10.0.1.68(配置了Failover和Load balancing)的节点,最后10.0.1.68将数据发送的10.0.1.70,77,85,86,87节点,这些节点最终将数据写到本地硬盘。 那...原创 2015-10-23 14:56:03 · 5023 阅读 · 0 评论 -
Flume之Failover和Load balancing原理及实例
Failover Sink ProcessorFailover Sink Processor维护了一个sink的优先级列表,具有故障转移的功能,具体的配置如下(加粗的必须配置): 属性名称 默认值 描述 sinks – 多个sink用空格分开。 processor.type default 组件的名称,必须是:failover proce...原创 2015-10-22 17:44:46 · 4972 阅读 · 0 评论 -
Flume采用zookeeper管理配置
Flume支持通过zookeeper来管理Agent的配置,但是这是一个实验性的功能。配置文件必须先上传到zookeeper中。以下Agent在Zookeeper节点树的结构: - /flume |- /a1 [Agent配置文件] |- /a2 [Agent配置文件]处理配置文件的类: org.apache.flume.node.PollingZooKeepe...原创 2015-10-27 11:05:11 · 10143 阅读 · 0 评论 -
Flume HDFS Sink使用及源码分析
HDFS Sink介绍Flume导入数据HDFS,目前只支持创建序列化(sequence)文件和文本(text)文件。还支持这两个文件的压缩。文件可以根据运行的时间,数据的大小和时间的数量来进行周期性的滚动(关闭当前文件产生新的文件)。也可以根据数据属性分区,例如根据时间戳或机器分区。HDFS目录路径可以包含格式化的转义字符,生成目录路径可以通过格式化转移字符(escape sequences...原创 2015-11-06 14:09:36 · 5546 阅读 · 0 评论 -
Flume - MemoryChannel源码解析
MemoryChannel的简易类结构: 内部类MemoryTransaction的简易类结构:一,configure(Context context) 1,capacity:MemroyChannel的容量,默认是100。 2,transCapacity:每个事务最大的容量,也就是每个事务能够获取的最大Event数量。默认也是100。 3,byt...原创 2015-11-21 15:55:15 · 3736 阅读 · 0 评论 -
Flume - FileChannel源码详解
FileChannel在Flume是一个非常重要的Channel,FileChannel可以很好的保证数据的完整性和一致性,提供了类似mysql binlog的机制,保证机器down机,JVM异常退出时数据不丢失,在采集数据量很大的情况下,建议FileChannel设置的目录和程序日志文件保存的目录设成不同的磁盘,以便提高效率。FileChannel的简易类结构: Fi...原创 2015-11-21 16:04:27 · 6467 阅读 · 0 评论 -
Flume+Elasticsearch搭建实时日志分析系统
最近做一个检测全球网络状况的项目,主要用于检测全球各个国家,地区的机房网络状况,服务的性能,DNS解析等等...情况的数据,通过中央服务器添加任务,下发任务到部署在全球各个国家和地区的minipc,minipc将获取到的数据反馈到监控服务,然后进行数据整合和分析提供报表,供公司更有针对性的优化网站性能。之所以采用Flume + Elasticsearch,而没有采用ELK(elasticsea...原创 2015-10-30 15:06:27 · 8237 阅读 · 0 评论 -
Flume - 各模块介绍
简介Flume是一个分布式,可靠的,可以用来有效的收集,聚合和移动大的日志数据的可用服务。它是一个基于数据流的简单且灵活的框架。采用可调可靠性机制和多种故障转移及恢复机制保证很好的稳健性和容错性。它使用了一个简单的可扩展的数据模型,允许在线分析应用。data flow(数据流)是Flume最重要的抽象,data flow描述了从数据产生,传输、处理并最终写入目标路径。下图描述了Flume重要的...原创 2015-08-31 21:37:30 · 5514 阅读 · 0 评论 -
Flume + HDFS Sink采集数据及如何添加第三方JAR
Flume默认情况下是没有引入HDFS,Kafka,Elasticsearch,Hbase等sink的相关jar包,如果使用,需要自行添加相关jar包。下面我以使用HDFS Sink为例,在Flume中加入第三方JAR包。Flume支持一种特殊的目录结构:plugins.d,它有特殊的格式,可以很方面的管理第三方JAR。当然我们可以直接把第三方JAR丢掉$FLUME_HOME/lib目录,...原创 2015-11-19 14:36:52 · 5706 阅读 · 0 评论 -
Flume之ChannelProcessor源码分析
接着上篇:Flume之ChannelSelector源码分析ChannelSelector主要是根据Event选择将其发送到哪些Channel。ChannelProcessor是通过ChannelSelector获取到Channels后,如何发送Event到Channel。 ChannelProcessor提供了将Source接收到的Events放入到Channels的一些方法,如果写入C...原创 2015-11-10 11:58:28 · 2964 阅读 · 0 评论 -
SpoolDirectorySource使用及源码分析
Spooling Directory Source简介Spooling Directory Source可以获取硬盘上“spooling”目录的数据,这个Source将监视指定目录是否有新文件,如果有新文件的话,就解析这个新文件。事件的解析逻辑是可插拔的。在文件的内容所有的都读取到Channel之后,Spooling Directory Source会重名或者是删除该文件以表示文件已经读取完成...原创 2015-11-07 16:58:06 · 6640 阅读 · 0 评论 -
Flume - 重新编译源码
Flume是一个分布式日志收集系统系统,具体的后面的文章会详细介绍。因为在使用Flame的过程中自定义了一些功能,所以需求重新打包,本篇只讲述如果编译,打包,导入eclipse阅读源码。编译过程中遇到些问题,网上找了好多资料,都无法解决。记录下来,希望能对需要的人有所帮助。原创 2015-08-31 21:36:25 · 8473 阅读 · 1 评论 -
Flume - 安装及启动命令详解
安装Flume1,到官网下载Flume,下载地址:http://flume.apache.org/download.html2 ,[root@bicloud77 home]# tar zxvf apache-flume-1.5.2-bin.tar.gz3, [root@bicloud77 home]# cd apache-flume-1.5.2-bin4,[root@bicloud...原创 2015-09-04 00:28:22 · 32079 阅读 · 0 评论 -
Flume - Too many unapproved licenses: 1
[ERROR] Failed to execute goal org.apache.rat:apache-rat-plugin:0.7:check (verify.rat) on project flume-ng-elasticsearch-sink: Too many unapproved licenses: 1 -> [Help 1][ERROR][ERROR] To see the...原创 2015-09-04 00:29:14 · 4410 阅读 · 0 评论 -
Flume几种监控方式
Flume主要由以下几种监控方式:JMX监控JMX高爆可以在flume-env.sh文件修改JAVA_OPTS环境变量,如下:export JAVA_OPTS=”-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=5445 -Dcom.sun.management.jmxremote.authentic...原创 2015-11-04 17:57:13 · 9687 阅读 · 0 评论 -
Exec Source使用及源码分析
Exec source介绍Exec source在启动时运行Unix命令,并且期望它会不断的在标准输出中产生数据。 (stderr会被丢弃,除非logStdErr设置成true).如果进程因为某些原因退出,Exce Source也将退出并且不会再产生数据。粗粒标注的必须配置:属性名 默认 描述 channels – type –...原创 2015-11-09 14:34:03 · 5329 阅读 · 0 评论 -
Flume之ChannelSelector源码分析
Flume中channel选择器(selector.type配置)必须实现ChannelSelector接口,实现了该接口的类主要作用是告诉Source中接收到的Event应该发送到哪些Channel,在Flume中主要由两个实现方式:1,复用,实现类:MultiplexingChannelSelector2,复制,实现类:ReplicatingChannelSelector如下:...原创 2015-11-09 21:20:34 · 3957 阅读 · 0 评论 -
Flume之Log4JAppender接收Log4j日志
简介Log4JAppender和LoadBalancingLog4jAppender可以将应用服务器的日志通过AvroSource实时的把日志传输到日志服务器,然后在传输到监控系统或者是HDFS中存储,FLume的Log4JAppender和LoadBalancingLog4jAppender必须使用Log4j的异步加载器,否则日志服务器down机,将会导致应用服务器异常,影响线上环境的使用。...原创 2015-12-07 21:37:35 · 6442 阅读 · 4 评论