整体认识flume:Flume介绍、分布式安装、常见问题及解决方案
- 格式:docx
- 大小:327.90 KB
- 文档页数:15
flume实训总结Flume 是一个分布式、可靠、可扩展的大数据采集系统,通过Flume,可以轻松地将数据从各种来源 (如磁盘、网络、内存等) 采集到 Kafka、Hadoop 等数据存储系统中。
本次实训旨在让大家深入了解 Flume 的安装、配置和使用,掌握数据采集和传输的技巧。
首先,我们学习了 Flume 的基本概念和原理。
Flume 的设计目标是简单、可靠、可扩展,它由几个核心组件组成,包括 source、sink、mixer、accumulator 等。
其中,source 负责从数据源中采集数据,sink 负责将数据注入到数据存储系统中,mixer 负责将多个数据流融合在一起,accumulator 用于对数据进行缓存和统计。
Flume 的整个工作流程是,当 source 采集到数据后,将其传递给mixer,mixer 再将数据传递给 accumulator,最后将数据存储到数据存储系统中。
然后,我们学习了 Flume 的安装和配置。
Flume 的官方文档提供了详细的安装和配置步骤,大家可以根据官方文档进行安装和配置。
在安装和配置过程中,我们学习了 Flume 的配置文件格式、数据源的配置、sink 的配置等。
接着,我们学习了 Flume 的使用方法。
Flume 的使用方法比较简单,可以通过命令行或者 API 进行使用。
例如,我们可以通过Flume 命令行工具来进行数据采集和传输,也可以通过 Flume API对数据进行传输和存储。
最后,我们进行了一些实践操作。
我们安装了 Flume 和 Kafka,并通过 Kafka 生产者和 Flume 消费者的方式进行了数据源的采集和传输。
我们还将 Flume 与 Hadoop 进行集成,通过 Flume 将数据注入到 Hadoop 中。
本次实训让我们深入了解了 Flume 的安装、配置和使用,掌握了数据采集和传输的技巧。
我们相信,通过本次实训,大家对 Flume 有了更深入的了解,在今后的工作中也会更有帮助。
Flume学习之路(⼀)Flume的基础介绍⼀、背景Hadoop业务的整体开发流程: 从Hadoop的业务开发流程图中可以看出,在⼤数据的业务处理过程中,对于数据的采集是⼗分重要的⼀步,也是不可避免的⼀步.许多公司的平台每天会产⽣⼤量的⽇志(⼀般为流式数据,如,搜索引擎的pv,查询等),处理这些⽇志需要特定的⽇志系统,⼀般⽽⾔,这些系统需要具有以下特征:(1)构建应⽤系统和分析系统的桥梁,并将它们之间的关联解耦;(2)⽀持近实时的在线分析系统和类似于Hadoop之类的离线分析系统;(3)具有⾼可扩展性。
即:当数据量增加时,可以通过增加节点进⾏⽔平扩展。
开源的⽇志系统,包括facebook的scribe,apache的chukwa,linkedin的kafka和cloudera的flume等。
⼆、Flume的简介 flume 作为 cloudera 开发的实时⽇志收集系统,受到了业界的认可与⼴泛应⽤。
Flume 初始的发⾏版本⽬前被统称为 Flume OG(original generation),属于 cloudera。
但随着 FLume 功能的扩展,Flume OG 代码⼯程臃肿、核⼼组件设计不合理、核⼼配置不标准等缺点暴露出来,尤其是在 Flume OG 的最后⼀个发⾏版本 0.9.4. 中,⽇志传输不稳定的现象尤为严重,为了解决这些问题,2011 年 10 ⽉ 22 号,cloudera 完成了 Flume-728,对 Flume 进⾏了⾥程碑式的改动:重构核⼼组件、核⼼配置以及代码架构,重构后的版本统称为 Flume NG(next generation);改动的另⼀原因是将 Flume 纳⼊ apache 旗下,cloudera Flume 改名为 Apache Flume。
Flume是⼀个分布式、可靠、⾼可⽤的海量⽇志聚合系统,⽀持在系统中定制各类数据发送⽅,⽤于收集数据;同时,Flume提供对数据的简单处理,并写到各种数据接收⽅的能⼒。
分布式存储解决方案目录一、内容概览 (2)1. 背景介绍 (3)2. 目标与意义 (3)二、分布式存储技术概述 (5)1. 分布式存储定义 (6)2. 分布式存储技术分类 (7)3. 分布式存储原理及特点 (8)三、分布式存储解决方案架构 (9)1. 整体架构设计 (10)1.1 硬件层 (12)1.2 软件层 (13)1.3 网络层 (14)2. 关键组件介绍 (15)2.1 数据节点 (16)2.2 控制节点 (18)2.3 存储节点 (19)2.4 其他辅助组件 (20)四、分布式存储解决方案核心技术 (22)1. 数据分片技术 (23)1.1 数据分片原理 (25)1.2 数据分片策略 (26)1.3 数据分片实例分析 (28)2. 数据复制与容错技术 (29)2.1 数据复制原理及策略 (31)2.2 容错机制与实现方法 (32)2.3 错误恢复过程 (34)3. 数据一致性技术 (35)3.1 数据一致性概念及重要性 (36)3.2 数据一致性协议与算法 (37)3.3 数据一致性维护与保障措施 (38)4. 负载均衡与性能优化技术 (39)4.1 负载均衡原理及策略 (41)4.2 性能优化方法与手段 (43)4.3 实例分析与展示 (43)五、分布式存储解决方案应用场景及案例分析 (44)1. 场景应用分类 (46)2. 具体案例分析报告展示 (47)一、内容概览分布式存储解决方案是一种旨在解决大规模数据存储和管理挑战的技术架构,它通过将数据分散存储在多个独立的节点上,提高数据的可用性、扩展性和容错能力。
本文档将全面介绍分布式存储系统的核心原理、架构设计、应用场景以及优势与挑战。
我们将从分布式存储的基本概念出发,阐述其相较于集中式存储的优势,如数据分布的均匀性、高可用性和可扩展性。
深入探讨分布式存储系统的关键组件,包括元数据管理、数据分布策略、负载均衡和容错机制等,并分析这些组件如何协同工作以保障数据的可靠存储和高效访问。
⽹站流量⽇志分析(数据采集之Flume采集)⽬录⽹站流量⽇志分析的意义通过分析⽤户的⾏为数据让更多的⽤户沉淀下来变成会员赚取更多的钱。
如何进⾏⽹站分析流量分析- 质量分析在看重数量的同时需要关注流量的质量所谓的质量指的是流量所能带来产⽣的价值。
- 多维度细分维度指的是分析的问题的⾓度在不同的维度下问题所展⽰的特性是不⼀样的内容导航分析从页⾯的⾓度分析⽤户的访问⾏为轨迹转化分析(漏⽃模型分析)从转化⽬标分析分析所谓的流失率转化率漏⽃模型:层层递减逐级流失的形象描述⽹站流量⽇志分析的数据处理流程按照数据的流转流程进⾏通俗概括就是数据从哪⾥来⼀直到数据到哪⼉去数据采集- 数据从⽆到有的过程:通过技术把客观事件量化成为数据(传感器收集服务器⽇志收集)- 数据搬运过程:把数据从⼀个存储介质传递到另⼀个存储介质中(Apache Flume)数据预处理- ⽬的:保证后续正式处理的数据是格式统⼀、⼲净规则的结构化数据- 技术:任何语⾔软件只要能够接受数据处理数据并且最终输出数据都可以⽤于数据预处理**选择MapReduce**- MR本⾝是java程序,语⾔⽐较熟悉可以⽆缝的调⽤java现有的开源库进⾏数据处理- MR是分布式的程序在预处理中如果数据量⽐较⼤可以分布式并⾏计算处理提⾼效率数据⼊库- 库:⾯向分析的数据仓库,也是就会Apache Hive- ⼊库的本质:经过ETL(抽取、转换、加载)把各个不同的数据源集中加载到数仓的分析主题下⾯。
数据分析- 本质:根据业务需求使⽤hive sql计算统计出各种不同的指标分析是⼀个持续的过程数据可视化尽量的使⽤图形表格的形式把分析的结果规律展⽰给别⼈看也称之为数据报表埋点数据采集数据从⽆到有的采集如何把⽤户的访问⾏为记录下来变成⽹站访问⽇志数据采集⽅式及其优缺点### ⽹站⽇志⽂件⽹站的web服务器⾃带⽇志记录的功能简单便捷的收集⼀些基础的属性信息常见的web服务器(Tomcat nginx apache server(httpd))优点:简单便捷⾃带功能不需要配置就可以使⽤缺点:收集的信息确定不利于维护收集的信息不够完整全⾯### 埋点JavaScript收集- ⽬标:不以影响⽤户的正常浏览体验作为标准数据采集分析锦上添花- 何为埋点```在待采集数据的页⾯上,预先置⼊⼀段JavaScript代码,当⽤户的某种⾏为满⾜JavaScript执⾏条件,触发JavaScript的执⾏,在执⾏的过程中进⾏数据的采集⼯作。
2024年四年级上册数学《大数的认识》教案(优秀4篇)作为一位不辞辛劳的人民教师,常常要根据教学需要编写教案,教案有利于教学水平的提高,有助于教研活动的开展。
那么教案应该怎么制定才合适呢?三人行,必有我师也。
择其善者而从之,其不善者而改之。
本文是作者美丽的编辑给大伙儿收集整理的2024年四年级上册数学《大数的认识》教案(优秀4篇),希望对大家有所启发。
关于大数的认识教学设计汇总篇一职责:1、负责公司的大数据处理框架的研发设计工作,梳理可实现方案和技术规范;2、开发、完善公司大数据平台;参与公司离线、实时大数据处理系统的设计、开发、测试及多个业务模块的自动化集成;3、负责业务平台数据统计分析模块的设计与规划;4、负责公司产品研发过程中的数据及存储设计;5、带领和培养团队完成组织分解的目标;任职要求:1、统招本科及以上学历,计算机、软件工程相关专业,至少8年以上工作经验,5年以上大数据开发经验;2、熟悉java、hadoop、hdfs、hive、hbase、spark、storm、flume等相关技术的基础架构3、熟悉数据仓库,数据算法,分布式计算技术理论,具有大数据整体系统架构设计经验;4、熟悉linux系统,熟练使用shell/perl/python脚本处理问题;5、对深度学习框架(tensorflow)和机器学习(svm 随机深林贝叶斯等)有一定了解的优先;6、能够组织项目开发组协同工作,包括团队沟通、计划、开发环境管理等《大数的认识》教案篇二教学目标:1.了解数的产生,认识自然数。
认识亿级的数和计数单位“十亿”“百亿”“千亿”,掌握整数数位顺序表,认识十进制计数法。
2.在经历数的产生过程中,感受“一一对应”的思想和“实践一”的辩证唯物观点。
3.使学生了解古老的数学文化,培养学生学习数学的兴趣,并渗透“生活中处处有数学”的思想。
教学重点:数的产生过程。
教学难点:理解十进制计数法的意义和十进位值制的价值。
Flume工作原理详解Flume是一个分布式、高可靠、高可用的大数据采集系统,用于将海量数据从各种源头(包括日志文件、消息队列等)收集到目标存储(如Hadoop HDFS)中。
在本文中,我们将详细介绍Flume的基本原理和工作流程。
1. Flume的核心概念在深入了解Flume的工作原理之前,我们需要先了解一些Flume的核心概念。
•Agent:Agent是Flume的基本工作单元,负责数据的采集、传输和存储。
一个Agent由多个组件组成,包括Source、Channel和Sink。
•Source:Source负责从数据源头获取数据,并将其传递给Channel。
•Channel:Channel是Source和Sink之间的缓冲区,用于存储待传输的数据。
Flume提供了多种类型的Channel,例如Memory Channel、FileChannel和Kafka Channel等。
•Sink:Sink负责将数据写入目标存储中,例如HDFS、HBase或Kafka等。
2. Flume的工作流程Flume的工作流程可以分为三个主要阶段:采集阶段、传输阶段和存储阶段。
下面我们将逐个阶段详细介绍。
2.1 采集阶段在采集阶段,Flume通过Source组件从数据源头获取数据。
Flume提供了多种类型的Source,可以根据不同的数据源选择合适的Source。
常见的Source类型有:•Avro Source:用于接收Avro格式的数据。
•Netcat Source:通过TCP协议监听指定端口,接收文本数据。
•Exec Source:通过执行外部命令获取数据。
•Spooling Directory Source:监控指定目录下的文件,并将文件内容作为事件发送。
在采集阶段,Flume还可以进行一些预处理操作,例如数据过滤、格式转换等。
这些操作可以通过自定义Interceptor实现。
2.2 传输阶段在传输阶段,Flume使用Channel组件将从Source获取到的数据传递给Sink。
分布式存储系统是现代大数据应用和云计算技术的基石,然而在实际应用中,常常会遇到各种性能问题。
本文将探讨分布式存储系统的常见性能问题,并提供解决方法。
一、数据一致性问题在分布式环境下,由于网络延迟、节点故障等原因,数据的一致性难以保证。
这会导致不同节点上的数据有所偏差,进而影响应用的可靠性和准确性。
为解决数据一致性问题,可以采用以下方法:1. 强一致性机制:通过引入分布式协议和一致性算法,确保数据在各个节点之间的一致性。
例如,使用Paxos或Raft算法进行数据一致性协调。
2. 弱一致性机制:在一些场景下,强一致性的代价较高。
此时可以采用弱一致性机制,如读写分离、事务异步提交等,权衡一致性和性能。
二、数据分片不均衡问题分布式存储系统通常将数据分为多个分片存储在不同节点上,但是由于数据访问模式的不均衡或节点性能的差异,会导致数据分片不均衡的情况。
为解决数据分片不均衡问题,可以采用以下方法:1. 均衡数据访问:通过负载均衡算法,将请求均匀地分配到各个节点上,避免部分节点压力过大。
常见的负载均衡算法有随机算法、轮询算法和权重算法等。
2. 动态数据迁移:当数据分片不均衡时,可以根据实时负载情况,将部分数据从负载过重的节点迁移到负载较轻的节点上,实现动态负载均衡。
三、存储容量不足问题随着数据规模的不断增长,存储容量可能会成为分布式存储系统的瓶颈。
为解决存储容量不足的问题,可以采用以下方法:1. 压缩与去重:对存储的数据进行压缩与去重操作,节省存储空间。
常见的压缩算法有gzip、Snappy等。
2. 数据分片与分区:将数据切分成多个较小的分片,并根据业务需求进行合理的分区,可以降低每个节点的存储压力。
四、数据冗余与备份问题分布式存储系统通常会采用数据冗余和备份机制来提高数据的可靠性和容错能力。
但是,过多的冗余数据和备份操作会导致存储系统的性能下降。
为解决数据冗余与备份问题,可以采用以下方法:1. 去除无效冗余:通过分析数据的冗余率和冗余类型,去除无效的冗余数据,提高存储效率。
il 课程教学Curriculum Teaching基于案例驱动的大数据课程教学探讨陈洁孙笑笑黄彬彬(杭州电子科技大学计算机学院浙江•杭州310018)摘要大数据作为IT行业的技术热点,逐渐成为了计算机及相关专业的重要课程。
然而,实际教学过程中却存在难以兼顾理论知识讲解和具体的案例实践的问题。
案例教学法在培养学生分析案例和解决实际案例能力方面具有一定的优势,因此,适合大数据课程的教学。
文章讨论了面向计算机专业的大数据课程教学,以案例分析的实践能力的培养作为切入点,提出了基于案例驱动的教学方法。
文章介绍了课程内容的设置、以案例为驱动课堂实践设计方案及考核方法。
关键词大数据案例实践案例教学中图分类号:G424文献标识码:A DOI:10.16400/ki.kjdkx.2020.10.055 Discussion on Teaching of Big Data Course Based on Case-drivenCHEN Jie,SUN Xiaoxiao,HUANG Binbin(School of Computer Science and Technology,Hangzhou Dianzi University,Hangzhou,Zhejiang310018) Abstract As a technology hotspot in IT industry,big data has gradually become an important course for computer and related majors.However,in the actual teaching process,it is difficult to give consideration to the theoretical knowledge explanation and specific case practice.Case teaching method has certain advantages in training students'ability to analyze and solve practical cases,so it is suitable for the teaching ofbig data course.This paper discusses the teaching ofbig data course for computer specialty.Taking the cultivation of practical ability of case analysis as the starting point,this paper proposes a case driven teaching method.The paper introduces the course design and the method of case driven.Keywords big data;case practice;case teaching0引言大数据是指超过传统数据库系统处理能力的海量数据。
一、概述在进行flume安装配置实验的过程中,我们遇到了一些问题,经过不懈的努力和探索,最终成功完成了实验。
在这篇文章中,我们将详细介绍flume安装配置过程中遇到的问题以及解决方法,希望能够帮助其他学习flume的同学避免类似问题,顺利完成实验。
二、安装flume1. 问题:在安装flume过程中,出现了依赖包下载失败的情况。
解决方法:检查网络连接是否正常,确认防火墙是否对下载依赖包进行了限制。
如果网络正常,可以尝试更换镜像源或手动下载缺失的依赖包进行安装。
2. 问题:flume安装完成后,无法启动。
解决方法:查看启动日志,排查可能的启动错误。
常见的问题包括端口被占用、配置文件错误等。
逐一排查,解决问题后重新启动flume。
三、配置flume1. 问题:配置flume时,遇到了agent无法连接到指定的source或sink的情况。
解决方法:检查配置文件中source和sink的配置是否正确,包括IP位置区域、端口等信息。
另外,也需要确认网络是否畅通,目标机器是否能够正常通信。
2. 问题:配置多个agent时,出现了agent之间相互影响、数据混乱的情况。
解决方法:在配置多个agent时,需要仔细 review 每个 agent 配置文件,避免 source 和 sink 的配置有重叠或冲突。
可以通过给不同的agent 设置不同的监听端口来避免数据混乱。
3. 问题:flume配置完成后,数据传输效率低下。
解决方法:可以通过调整 flume 的配置参数来优化数据传输效率,比如增加 channel 的容量、调整 batch 大小等。
另外,也需要考虑网络带宽以及目标端的处理能力,综合考虑进行调整。
四、总结通过解决flume安装配置过程中遇到的问题,我们不仅更加深入地理解了flume的原理和运行机制,还提升了自己的问题排查与解决能力。
在实际的工作中,我们也更加熟练地应对类似的问题,提高了工作效率和质量。
Flume详解
Flume是⼀种分布式,可靠且可⽤的服务,⽤于有效地收集,聚合和移动⼤量⽇志数据。
它具有基于流数据流的简单灵活的架构。
它具有可靠的可靠性机制和许多故障转移和恢复机制,具有强⼤的容错性。
它使⽤简单的可扩展数据模型,允许在线分析应⽤程序。
Apache Flume团队很⾼兴地宣布推出Flume 1.9.0。
Flume是⼀种分布式,可靠且可⽤的服务,⽤于有效地收集,聚合和移动⼤量流式事件数据。
版本1.9.0是作为Apache顶级项⽬的第11个Flume版本。
Flume 1.9.0是⼀款稳定的⽣产型软件,与以前版本的Flume 1.x代码⾏向后兼容。
这个版本进⾏了⼏个⽉的积极开发:⾃1.8.0以来已经提交了⼤约70个补丁,代表了许多功能,增强功能和错误修复。
虽然可以在1.9.0版本页⾯(下⾯的链接)上找到完整的更改⽇志,但以下是⼀些新的功能亮点:
更好的SSL / TLS⽀持
配置过滤器,提供将密码等敏感信息注⼊配置的⽅法
Context中的Float和Double值⽀持
Kafka客户端升级到2.0
HBase 2⽀持。
整体认识flume:Flume介绍、分布式安装、常见问题及解决方案问题导读1.什么是flume?2.flume包含哪些组件?3.Flume在读取utf-8格式的文件时会出现解析不了时间戳,该如何解决?Flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统,支持在系统中定制各类数据发送方,用同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。
Flume的逻辑架构:Flume逻辑上分三层架构:agent,collector,storageagent用于采集数据,agent是flume中产生数据流的地方,同时,agent会将产生的数据流传输到collector。
collectorcollector的作用是将多个agent的数据汇总后,加载到storage中。
storagestorage是存储系统,可以是一个普通file,也可以是HDFS,HIVE,HBase等。
MasterMaster是管理协调agent和collector的配置等信息,是flume集群的控制器。
在Flume中,最重要的抽象是data flow(数据流),data flow描述了数据从产生,传输、处理并最终写入目标对于agent数据流配置就是从哪得到数据,把数据发送到哪个collector。
对于collector是接收agent发过来的数据,把数据发送到指定的目标机器上。
Flume的特性• Reliability:Flume提供3中数据可靠性选项,包括End-to-end、Store on failure和Best effort。
其中E 用了磁盘日志和接受端Ack的方式,保证Flume接受到的数据会最终到达目的,但是效率是最差的。
Store on f 不可用的时候,数据会保持在本地硬盘,效率会比end-to-end高,但是会出现日志丢失的情况。
Best effort不保证,效率最高,日志记录没有保证。
• Scalability:Flume的3大组件:collector、master和storage tier都是可伸缩的。
需要注意的是,Flum 的处理不需要带状态,它的Scalability可以很容易实现。
• Manageability:master能够动态管理flume集群节点,多master情况,Flume利用ZooKeeper和go 置数据的一致性。
• Extensibility:基于Java,用户可以为Flume添加各种新的功能,如通过继承Source,用户可以实现自入方式,实现Sink的子类,用户可以将数据写往特定目标,同时,通过SinkDecorator,用户可以对数据进行一注:Flume框架对hadoop和zookeeper的依赖只是在jar包上,并不要求flume启动时必须将hadoop和zook 启动。
Flume的分布式安装————此为目前集群的flume安装过程部署flume在集群上,按照如下步骤:在集群上的每台机器上安装flume选择一个或多个节点当做master修改静态配置文件在至少一台机器上启动一个master ,所有节点启动flume node接下来的一章描述如何手动修改配置文件为集群上的节点指定master,如何为参数设置默认值,本章的后一部分系统的数据流配置,如何通过增加collector来扩充系统容量,如何提高可靠性通过增加更多的master。
注意:个集群的网络环境要保证稳定,可靠,否则会出现一些莫名错误(比如:agent端发送不了数据到collector)。
集群每台机器上安装flume场景:操作系统版本:CentOS5.6Hadoop版本:0.20.2Jdk版本:jdk1.6.0_26安装flume版本:flume-0.9.4步骤1:下载flume最新版本,现在服务器上安装的是flume-distribution-0.9.4的版本,下载地址是https:///cloudera/flume/downloads目前flume的安装包是放在/data/sysdir/install_tar文件件的下面步骤2:解压flume安装包到/data/sysdir文件夹下面,在命令行中输入tar zxvf/data/sysdir/install_tar/flume-distributin-0.9.4.tar.gz -C /data/sysdir步骤3:修改etc/profile文件,加入:export FLUME_HOME=/data/sysdir/flume-distribution-0.9.4export PATH=.:$PATH::$FLUME_HOME/bin步骤4:验证安装及其他安装完毕后,运行flume命令,会看到以下输出:usage: flume command [args...]commands include:dump Takes a specified source and dumps to consolenode Start a Flume node/agent (with watchdog)master Start a Flume Master server (with watchdog)version Dump flume build version informationnode_nowatch Start a flume node/agent (no watchdog)master_nowatch Start a Flume Master server (no watchdog)class <class> Run specified fully qualified class using Flume environment (no watchdog)for example: flume com.cloudera.flume.agent.FlumeNodeshell Start the flume shellkillmaster Kill a running masterflume配置文件位置:$FLUME_HOME/conf 下选择一个或多个节点当做master对于master的选择情况,可以在集群上定义一个master,也可以为了提高可用性选择多个节点做为master, 单点master模式:容易管理,但在系统的容错和扩展性有缺陷多点master模式:通常是运行3/5个master,能很好的容错原文如下:(/cdh/3/flume/UserGuide/)Standalone mode - this is where the Master runs ona single machine. This is easy to administer, and simple t hasdisadvantages when it comes to scalability and fault-tolerance.Distributed mode - this is where the Master isconfigured to run on several machines - usually three or five. This to serve many Flows, and also has good fault-toleranceproperties.Flume master数量的选择原则原文如下:The distributed Flume Master will continue to workcorrectly as long as more than half the physical machine s r stillworking and haven‘t crashed. Therefore if you want to survive one fault, youneed three machines (becaus3/2). For every extra fault you wantto tolerate, add another two machines, so for two faults you need fivema that having an even number of machines doesn‘t make the FlumeMaster any more fault-tolerant - four machi tolerate one failure,because if two were to fail only two would be left functioning, which is notmore than half Common deployments should be well served by three orfive machine s.分布式的master能够继续正常工作不会崩溃,的前提是正常工作的master数量超过总master数量的一半。
Flume master的作用主要有两个:原文如下:The Master has two main jobs to perform. The firstis to keep track of all the nodes in a Flume deployment an theminformed of any changes to their configuration. The second is to trackacknowledgements from the end of that is operating in reliablemode so that the source at the top of that flow knows when to stop transmittingan Master主要有两个工作,第一是跟踪各节点的配置情况,通知节点配置的改变,第二是跟踪来自flow的结尾操控式下(E2E)的信息,以至于让flow的源头知道什么时候停止传输event。
目前集群flume master的选择情况10.168.0.174、10.168.0.181、10.168.0.188为flume master修改静态配置文件Site-specific设置对于flume节点和master通过在每一个集群节点的conf/flume-site.xml是可配置的,如果这个设置的属性默认的在conf/flume--conf.xml中,在接下来的例子中,在flume的节点上设置master名,让节点自―master‖的flume Masterconf/flume-conf.xml.1.<?xml version="1.0"?>2.<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>3.<configuration>4.<property>5.<name>flume.master.servers</name>6.<value>master</value>7.</property>8.</configuration>复制代码在多master的情况下需要如下配置:1.<property>2. <name>flume.master.servers</name>3. <value>hadoop ,,datanode</value>4. <description>A comma-separated list of hostnames, one for each5. machine in the Flume Master.6. </description>7. </property>8.9. <property>10. <name>flume.master.store</name>11. <value>zookeeper</value>12. <description>How the Flume Master store s node configurations. Must13. be either 'zookeeper' or 'memory'.</description>14. </property>15.16. <property>17. <name>flume.master.serverid</name>18. <value>2</value>19. <description>The unique identifier for a machine in a20. Flume Master ensemble. Must be different on every21.master instance.</description>22. </property>复制代码注意:flume.master.serverid属性的配置主要是针对master,如在集群上目前是181,174,188为master,这三$FLUME_HOME/conf/flume-conf.xml文件中flume.master.serverid必须是不能相同的,该属性的值以0开始。