Apache Flume安装与配置

合集下载

大数据分析平台的部署与配置指南

大数据分析平台的部署与配置指南

大数据分析平台的部署与配置指南摘要:本文旨在为用户提供大数据分析平台的部署与配置指南。

大数据分析平台是基于大数据技术,旨在帮助用户实现高效的数据分析与处理。

本指南将从平台部署、配置环境、数据源接入以及用户权限管理等方面提供详细的步骤和操作指引,以帮助用户顺利搭建和配置大数据分析平台。

1. 平台部署1.1 硬件要求在开始部署大数据分析平台之前,首先需要确保服务器硬件符合要求。

通常情况下,大数据分析平台对硬件的要求较高,建议采用高性能的服务器配置,并确保服务器具备足够的存储空间和内存。

1.2 软件要求大数据分析平台的部署需要运行在分布式环境中,因此需要先安装和配置分布式计算框架,例如Apache Hadoop、Apache Spark等。

此外,还需要安装支持大数据分析的相关工具和库,如Hive、Pig、HBase等,以及数据库管理系统如MySQL、Oracle等。

2. 配置环境2.1 操作系统配置在部署大数据分析平台之前,需要对操作系统进行一些配置。

首先,需要关闭不必要的服务和进程,以释放系统资源。

其次,需要优化文件系统和网络配置,以提高整体性能。

2.2 网络配置大数据分析平台通常需要在多台服务器之间进行数据交互和协作,因此需要配置网络环境以确保服务器之间能够相互通信。

可以使用静态IP地址或者DNS来配置服务器的网络连接,以方便数据的传输和访问。

3. 数据源接入大数据分析平台需要接入各种数据源,如结构化数据、半结构化数据和非结构化数据等。

为了便于分析和处理,需要将这些数据源导入到平台中。

以下是一些常用的数据源接入方式:3.1 批量导入对于结构化数据和半结构化数据,可以使用批量导入的方式将其导入到大数据平台中。

可以使用工具如Sqoop等,将数据从关系型数据库中导出,并以批量的方式载入到大数据平台中。

3.2 实时流式数据接入对于需要实时分析的场景,可以使用流式数据接入的方式将数据实时地导入到大数据平台中。

Flume学习之路(一)Flume的基础介绍

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提供对数据的简单处理,并写到各种数据接收⽅的能⼒。

flume的基本功能

flume的基本功能

flume的基本功能Flume的基本功能Flume是一个可靠、高可用性的分布式系统,用于收集、聚合和传输大规模数据。

它是Apache软件基金会的开源项目,旨在解决大数据环境下数据流动的问题。

Flume的基本功能包括数据源、数据通道和数据目的地三个方面。

一、数据源Flume支持多种数据源,包括日志文件、消息队列、文件系统等。

它可以监控这些数据源,并将数据采集到Flume Agent中进行处理。

Flume提供了多种数据源的适配器,可以方便地接入不同类型的数据源。

1. 日志文件Flume可以监控指定的日志文件,当文件发生变化时,自动将新的日志数据采集到Agent中。

这对于实时处理日志数据非常有用,可以及时获取系统运行状态、异常情况等信息。

2. 消息队列Flume可以与常见的消息队列系统集成,如Kafka、RabbitMQ等。

它可以从消息队列中消费数据,并将数据发送到Agent中进行处理。

这种方式适用于实时数据流的传输,保证数据的可靠性和高吞吐量。

3. 文件系统Flume可以监控指定的文件目录,当文件发生变化时,自动将新的文件内容采集到Agent中。

这对于处理大规模的文件数据非常有用,可以实现文件数据的实时传输和分析。

二、数据通道Flume使用可靠的数据通道将数据从数据源传输到数据目的地。

数据通道是Flume的核心组件,负责数据的传输和存储。

Flume提供了多种数据通道的实现,如内存通道、文件通道、Kafka通道等。

1. 内存通道内存通道是Flume默认的数据通道,它将数据暂存在Agent的内存中,然后按照指定的规则传输到下一个组件。

内存通道适用于数据量较小、实时性要求较高的场景。

2. 文件通道文件通道将数据暂存在Agent的文件系统中,然后按照指定的规则传输到下一个组件。

文件通道适用于数据量较大、实时性要求一般的场景。

3. Kafka通道Kafka通道是Flume与Kafka消息队列集成的一种数据通道。

APACHE安装配置说明

APACHE安装配置说明

APACHE安装配置说明⼀、软件下载⼆、环境检查# rpm -qa|grep zlibzlib-devel-1.2.3-3zlib-1.2.3-3# rpm -qa|grep sslopenssl-devel-0.9.8b-10.el5openssl-0.9.8b-10.el5如果需要依赖包,安装其对应的devel包即可,此处仅⽤到zlib和ssl。

另,如果有httpd包,要先卸载掉或停⽌其服务。

三、编译安装1、针对安装⽬的的说明(来⾃INSTALL⽂件)如果是开发者则使⽤此选项,--with-included-apr利于连接apache的代码或者是调试apache,其消除了由于版本或者编译中跟APR或者APR-util代码产⽣的不匹配;如果从⼦版本编译apache,要先运⾏buildconf(需要Python,GNU autoconf和libtool),然后运⾏configure。

发⾏包不⽤。

如果要在FreeBSD5.4之前编译时包含apache的threaded MPM,需要使⽤--enable-threads和--with-mpm 参数在Mac上编译⼦版本,要使⽤GNU Libtool 1.4.2及以上版本2、关于SSL加密和正则表达式(来⾃⽂件README)Apache2.0及以上版本在⽬录modules/ssl/下包含了mod_ssl模块⽤于配置和监听ssl⽹络接⼝的连接。

(另外,⼀些apr-util版本在⽬录srclib/apr-util/ssl/下提供了ssl⽹络接⼝)带有单词crypto的包的名字,可能包含openssl加密库的⽬标代码。

如果apache的加密功能不理想或者要排除再重分配,则可以使⽤包的名字包含nossl的发布包。

Apache使⽤PCRE包包含的正则表达式。

3、对configure参数的说明配置帮助表:-h, --help显⽰帮助信息display this help and exit--help=short ⽤short参数将只显⽰正在运⾏的当前脚本的选项,⽽不能列出适⽤于Apache配置脚本所运⾏的外部配置脚本的选项display optionsspecific to thispackage--help=recursive 使⽤recursive参数将显⽰所有程序包的简短描述display the shorthelp of all theincluded packages-V, --version显⽰版本display version information and exit-q, --quiet, --silent不显⽰checking……信息do notprint`checking...' messages--cache-file=FILE在指定⽂件中存储测试结果cache test results in FILE [disabled]-C, --config-cache 在⽂件config.cache中存储测试结果alias for `--cachefile=config.cache'-n, --no-create configure脚本运⾏结束后不输出结果⽂件,常⽤于正式编译前的测试。

技能竞赛中职组ZZ052-大数据应用与服务赛项赛题第01套

技能竞赛中职组ZZ052-大数据应用与服务赛项赛题第01套

一、背景描述随着中国数字化转型战略的推进,传统通信行业正面临着数字化转型的挑战和机遇;用户对通信服务的需求已经发生了根本性的变化,通信运营商正在通过技术创新和服务升级来满足这些需求;数字化转型涉及到网络建设、数据管理、服务创新等方面,大数据技术成为关键驱动力之一。

为了应对这一转型,我们要求参赛者搭建通信行业大数据分析平台,并利用Hive数仓技术和Spark计算引擎对通信用户行为数据进行操作和分析;通过这样的平台,可以快速处理和挖掘海量数据,得出有价值的洞察和分析结果。

同时,在展示数据分析结果方面,我们要求参赛者结合前端可视化框架ECharts和Python可视化库pyecharts,创建交互式的数据可视化图表;这些图表能够直观地展示数据分析结果,帮助管理者更好地决策企业的发展战略,并对销售、营销、客服和技术等部门的目标策略进行全面部署;通过数据可视化,销售部门可以了解产品销售趋势和市场份额;营销部门可以优化营销活动和广告投放策略;客服部门可以提供更好的客户服务;技术部门可以进行网络优化和故障排查。

二、模块一:平台搭建与运维(一)任务一:大数据平台搭建本模块需要使用root用户完成相关配置;所有组件均在/root/software目录下。

1.子任务一:基础环境准备master、slave1、slave2三台节点都需要安装JDK(1)将JDK安装包解压到/root/software目录下;(2)在“/etc/profile”文件中配置JDK环境变量JAVA_HOME和PATH的值,并让配置文件立即生效;(3)查看JDK版本,检测JDK是否安装成功。

在master节点操作(1)在master上生成SSH密钥对;(2)将master上的公钥拷贝到slave1和slave2上;在master上通过SSH连接slave1和slave2来验证。

2.子任务二:Hadoop 完全分布式安装配置master、slave1、slave2三台节点都需要安装Hadoop (1)在主节点将Hadoop安装包解压到/root/software目录下;(2)依次配置hadoop-env.sh、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml和workers配置文件;Hadoop集群部署规划如下表;表1 Hadoop集群部署规划(3)在master节点的Hadoop安装目录下依次创建hadoopDatas/tempDatas、hadoopDatas/namenodeDatas、hadoopDatas/datanodeDatas、hadoopDatas/dfs/nn/edits、hadoopDatas/dfs/snn/name和hadoopDatas/dfs/nn/snn/edits目录;(4)在master节点上使用scp命令将配置完的Hadoop 安装目录直接拷贝至slave1和slave2;(5)三台节点的“/etc/profile”文件中配置Hadoop 环境变量HADOOP_HOME和PATH的值,并让配置文件立即生效;(6)在主节点格式化集群;(7)在主节点依次启动HDFS、YARN集群和历史服务3.子任务三:MySQL安装配置只在master节点操作(1)将MySQL 5.7.25安装包解压到/root/software 目录下;(2)使用rpm -ivh依次安装mysql-community-common、mysql-community- libs、mysql-community-libs-compat、mysql-community-client和mysql-community-server包;(3)安装好MySQL后,使用mysql用户初始化和启动数据库;(4)使用root用户无密码登录MySQL,然后将root用户的密码修改为123456,修改完成退出MySQL,重新登录验证密码是否修改成功;更改“mysql”数据库里的user表里的host项,从localhost改成%即可实现用户远程登录;设置完成刷新配置信息,让其生效。

flume安装配置实验中遇到的问题和总结

flume安装配置实验中遇到的问题和总结

一、概述在进行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知识点

flume知识点Flume知识点一、概述Flume是一个可靠、可扩展且可管理的分布式日志收集系统,用于将日志数据从多个源头(如Web服务器、数据库、应用程序等)收集到中央存储(如Hadoop、HBase、Kafka等)中。

它是Apache软件基金会的开源项目,广泛应用于大数据领域。

二、架构Flume的架构由三个主要组件组成:Source、Channel和Sink。

1. Source:负责收集数据并将其传递给Channel。

Flume提供了多种类型的Source,如Avro Source、Spooling Directory Source 等,可以根据不同的需求选择合适的Source。

2. Channel:用于存储从Source接收到的事件。

Flume提供了多种类型的Channel,如Memory Channel、File Channel等,可以根据数据量和性能需求选择合适的Channel。

3. Sink:负责将从Channel中获取的事件传递给目标存储。

Flume 提供了多种类型的Sink,如HDFS Sink、HBase Sink等,可以根据数据存储的类型选择合适的Sink。

三、工作流程Flume的工作流程可以分为三个阶段:数据采集、数据传输和数据存储。

1. 数据采集:在数据采集阶段,Flume通过Source组件从不同的数据源中收集数据。

Source可以按照配置文件中的规则来监控数据源,并将收集到的数据传递给Channel。

2. 数据传输:在数据传输阶段,Flume将从Source收集到的数据传输到Channel。

Channel可以存储一定量的数据,以便在高负载情况下进行缓冲。

3. 数据存储:在数据存储阶段,Flume通过Sink组件将数据从Channel传输到目标存储。

Sink可以根据配置文件中的规则将数据存储到不同的存储系统中。

四、高可靠性Flume具有高可靠性的特点,可以确保数据的安全传输和存储。

apache用法

apache用法

apache用法Apache是一款流行的web服务器软件,它能够提供网页浏览、动态内容创建、数据库服务等多种功能。

在本文中,我们将介绍Apache 的安装、配置、管理、安全性和优化等方面的知识。

一、安装Apache安装Apache非常简单,您可以从官方网站下载适合您操作系统的安装包。

在安装过程中,您需要选择安装路径、配置文件位置等选项,并设置一些基本参数。

安装完成后,您可以通过浏览器或命令行来测试Apache是否正常运行。

二、配置ApacheApache的配置文件位于`/etc/httpd/conf`目录下,该文件包含了Apache服务器的各种设置。

配置文件使用了较为简洁的语法,方便修改和调整。

您可以使用文本编辑器打开配置文件,根据您的需求进行修改。

在配置文件中,您可以设置虚拟主机、监听地址和端口、启用或禁用某些模块等功能。

同时,您还可以配置SSL证书,以实现安全传输。

配置完成后,需要重新启动Apache服务器,使配置生效。

三、管理ApacheApache提供了多种管理工具,方便您监控和调整服务器状态。

您可以使用命令行工具`apachectl`来查看服务器状态、启动和停止服务、重新加载配置等操作。

此外,您还可以使用Web管理工具,如Apache自带的Web管理界面或第三方工具,通过浏览器进行管理操作。

四、安全性Apache具有较高的安全性,但仍然需要注意一些安全问题。

首先,确保您的配置文件没有安全漏洞,如弱密码、不正确的权限设置等。

其次,及时更新Apache软件和配置文件,以修复潜在的安全漏洞。

最后,限制对配置文件的访问,以防止未经授权的修改。

五、优化Apache优化Apache可以提高服务器的性能和稳定性。

首先,优化虚拟主机配置,根据实际需求设置合适的资源分配和访问控制。

其次,使用缓存技术,如反向代理和缓存服务器,减少对数据库的访问次数。

此外,合理配置服务器硬件资源,如内存、硬盘和CPU,以充分利用服务器性能。

Apache的安装及使用

Apache的安装及使用

Apache的安装及使⽤PHP最初是 Persional Home Page 的缩写,表⽰个⼈主页。

下载Apache进⼊apache服务器官⽹这⾥我们以下载稳定版的Apache httpd 2.4.39 Released 为例,点击download。

下载后解压,改名为httpd,放到D盘根⽬录。

Apache 各⽬录作⽤⽬录名说明bin Apache执⾏⽂件所在⽬录,如httpd.exe、ApacheMonitor.exe 等cgi-bin GCI⽹页程序存放⽬录conf Apache服务器配置⽂件所在⽬录error错误⽂件⽬录,⽤于保存因服务器设置或浏览器请求的数据错误时产⽣的错误htdocs默认Web⽂档根⽬录,就是存放默认⾸页的位置icons Apache预设的⼀些⼩图标存放⽬录includeliblogs Apache ⽇志⽂件存放⽬录,主要包括访问⽇志 access.log 和错误⽇志 error.logmodules Apache服务器⽀持的动态加载模块所在⽬录安装 Aapche 服务使⽤管理员⾝份运⾏cmd,命令⾏下进⼊到 Apache 下⾯的 bin ⽬录,输⼊httpd -k install把apache安装成windows后台服务。

命令启动Apache服务:httpd -k starthttpd -k stop停⽌httpd -k restart重启更多命令,请使⽤httpd -help查看如果出现以下错误【原因】httpd.conf ⾥⾯配置的 ServerRoot 路径跟实际路径不⼀致,导致路径⽆效。

【解决⽅案】修改 D:\httpd\Apache24\conf ⽬录下的 httpd.conf ⽂件,在38⾏左右Define SRVROOT "D:/httpd/Apache24"ServerRoot "${SRVROOT}"注意路径是 “/”不是“\”端⼝冲突问题Apache 默认使⽤的端⼝号为 80,如果遇到 80 端⼝被其他应⽤程序占⽤的情况,有两种解决⽅案:⽅案⼀:将占⽤ 80 端⼝的程序关闭掉,具体做法如下:在cmd中运⾏netstat -ano "80"查看是哪个PID在使⽤ 80 端⼝,查找到PID 后可以使⽤ kill 命令将其结束掉进程。

Hadoop大数据技术与项目实战知到章节答案智慧树2023年山西职业技术学院

Hadoop大数据技术与项目实战知到章节答案智慧树2023年山西职业技术学院

Hadoop大数据技术与项目实战知到章节测试答案智慧树2023年最新山西职业技术学院绪论单元测试1.下列对大数据的特点描述不正确的是()参考答案:价值密度高第一章测试1.云主机和物理机的寿命都是永久性的。

()参考答案:错2.对于实时性要求高的应用,需要应用实时处理架构。

()参考答案:对3.数据仓库是用来存储数据的而不是分析数据的。

()参考答案:错4.在DWS层中,用户行为日志数据分为公共字段和事件字段。

()参考答案:对5.项目实施流程中没有哪一步()参考答案:下载数据6.数据分析在企业中的作用()参考答案:直接的获取经营的利润7.数据结构中哪项不是页面入口的来源()参考答案:登录页8.Hadoop的三大发行版本是()参考答案:HDP;CDH;Apache9.流量分析常见指标有哪些方面()参考答案:转化路径分析;来源分析;访客分析;受访分析10.网站流量数据分析的意义有哪些()参考答案:帮助提高网站流量;帮助网站运营人员获取网站流量信息;提升网站用户体验;从多方面提供网站分析的数据依据第二章测试1.Hadoop是一种分布式系统基础架构,主要解决海量数据存储和海量数据计算两大问题。

()参考答案:对2.在HDFS配置文件中,主要配置的就是hdfs-site.xml配置文件。

()参考答案:对3.在Hadoop分布式集群中,不需要对集群中的每一个节点都进行ip规划。

()参考答案:错4.利用HDFS操作命令可以将数据文件从本地上传到HDFS上,也可以将数据文件从HDFS下载到本地。

()参考答案:对5.在HDFS API操作中, closeFileSystem方法的功能是释放文件系统对象的资源。

()参考答案:对6.MapReduce词频统计案例中,执行map任务的最后阶段,会将缓冲区的数据全部写入到磁盘。

()参考答案:对7.Flume是Cloudera公司提供的一款高可用、高可靠、分布式的系统,可用于海量日志采集、聚合和传输。

flume 详解

flume 详解

flume 详解Flume是一个分布式、可靠、高可用的系统,用于有效地收集、聚合和移动大量的日志和事件数据。

它是一个开源项目,由Apache基金会进行管理和维护。

Flume的设计目标是提供一种简单且可扩展的方式来收集数据,无论是静态数据文件还是实时产生的数据流。

它主要用于在大规模数据处理和分析的场景中,将分散在不同来源的数据集中进行收集和整合。

Flume的核心概念是事件(Event)、代理(Agent)和通道(Channel)。

事件是指需要被收集和处理的数据单元,可以是一条日志、一条消息或其他形式的数据。

代理是Flume的工作单元,负责收集、聚合和传送事件。

通道是代理之间传递事件的途径。

Flume的架构是以流水线模型来组织的。

数据源发送事件到一个代理,代理从数据源接收事件,并将其传递到一个或多个通道。

其他代理可以从通道中获取事件,进行处理和传递到下一个代理或目的地。

这种方式使得Flume能够方便地实现数据的多级传递和处理。

Flume提供了多种不同的组件和插件,用于适应不同的数据收集和处理需求。

其中,最常用的组件是Source、Sink和Channel。

Source负责从数据源收集事件,Sink负责将事件传送到目的地,Channel负责在代理之间传递事件。

Flume还提供了一些高级功能,如可靠性保证、事务支持和负载均衡等。

可靠性保证功能确保数据的完整性和可靠性,并提供数据重传机制。

事务支持功能允许将数据读取和写入操作作为一个事务进行。

负载均衡功能用于在多个代理间平衡数据的处理负载。

总的来说,Flume是一个强大的数据收集和传输工具,可用于处理大规模数据流。

其灵活的架构和丰富的功能使得它成为了许多大型企业和数据处理项目的首选工具之一。

Flume配置文件写法总结

Flume配置文件写法总结

Flume配置⽂件写法总结⼀、agent 第⼀步是定义agent(代理)及agent下的sources、channels、sinks的简称,如下: a1.sources = r1 a1.sinks = k1 a1.channels = c1⼆、sources 第⼆步是定义sources(接收数据源),以下是常见的sources类型: 1.type = netcat =>监视⼀个端⼝,需要端⼝名称、端⼝号: bind = localhost port = 44444 2.type = exec =>监视⼀个⽂件,需要命令⾏、命令⾏使⽤的脚本 command = tail -F /opt/jars/calllog.csv shell = /usr/bin/bash -c 3.type = spooldir =>监视⼀个⽂件夹,需要⽂件夹路径 可以添加进⼊⽂件夹⽂件的后缀名、可以添加绝对路径的⽂件名、通过正则表达式过滤以tmp结尾的⽂件 spoolDir = /root/spooldir fileSuffix = .COMPLETED fileHeader = true ignorePattern = ([^]*\.tmp) 4.selector.type = replicating =>将数据量复制给多个channel 5.type = avro =>通过端⼝接收数据,需要端⼝名称、端⼝号 bind = hd1-1 port = 4141三、channels 第三步是设置channel(管道)的类型等 1.tpye = memory =>使⽤内存为管道,设置内存总容量、每次传输的容量 capacity =1000 transactionCapacity =100 2.使⽤磁盘作为管道四、sink 第四步是设置sink(下沉)的类型和细节设置 1.type = logger =>输出⽇志⽂件,⽤于监控端⼝直接在端⼝输出接受的数据 2.type = hdfs =>输出到hdfs, hdfs.path = hdfs://hd1-1:9000/flume/%Y%m%d/%H =>设置hdfs的路径 hdfs.filePrefix = logs- =>设置⽂件的前缀 hdfs.round = true =>按照时间滚动⽂件夹 hdfs.roundValue = 1 =>多长时间创建⼀个新⽂件夹 hdfs.roundUnit = minute =>定义时间的单位 eLocalTimeStamp = true =>使⽤本地时间戳 hdfs.batchSize = 500 =>积攒到少event后flush到hdfs⼀次 hdfs.fileType = DataStream =>设置⽂件类型,可⽀持压缩 hdfs.rollInterval = 30 =>多久⽣成⼀个新⽂件 hdfs.rollSize = 134217700 =>设置每个⽂件的滚动⼤⼩ hdfs.rollCount = 0 =>滚动与Event⽆关 hdfs.minBlockReplicas = 1 =>最⼩冗余数(及备份数,hdfs⾃带⽆需配置) 3.type = avro =>将数据发送到端⼝,需要设置端⼝名称、端⼝号 hostname = hd1-1 port = 4141 4.type = file_roll =>将数据传输到本地⽂件,需要设置⽂件路径 sink.directory = /root/flume2 注意flume2⽂件夹需要⾃⼰创建 5.type = org.apache.flume.sink.kafka.KafkaSink =>将数据传输到kafka 需要设置集群的机器名称和端⼝号、主题、batchSize、Ack机制 brokerList = hd1-1:9092,hd1-2:9092,hd1-3:9092 topic = calllog batchSize = 20 requiredAcks =1 ACK机制(1、0、-1,1是最安全的)五、bind a1.sources.r1.channels = c1 a1.sinks.k1.channel = c1。

apache安装及常用配置详细图示

apache安装及常用配置详细图示
2、强烈建议在对配置文件操作前先做好配置文件的备份。 3、强烈建议在安装完成后或修改完成某个配置后,不要急着再去修改其他配置文件, 先运行 apache 服务看看是否能够正常启动。这样方便日后配置文件出错时的问题查找。 4、修改任何配置后,重新启动服务后在测试。 5、如安装 linux 时已经安装 apache 服务器跳过第 1、3 节。
二、启动停止服务...................................................................................................................5 2.1 检查端口使用情况:.................................................................................................5
三、制作服务脚本...................................................................................................................5 3.1 创建启动文件.............................................................................................................5 3.2 注册服务.....................................................................................................................6

GZ033 大数据应用开发赛题第10套

GZ033 大数据应用开发赛题第10套

2023年全国职业院校技能大赛赛题第10套赛项名称:大数据应用开发英文名称: Big Data Application Development赛项组别:高等职业教育组赛项编号: GZ033背景描述工业互联网是工业全要素、全产业链、全价值链的全面连接,是人、机、物、工厂互联互通的新型工业生产制造服务体系,是互联网从消费领域向生产领域、从虚拟经济向实体经济拓展的核心载体,是建设现代化经济体系、实现高质量发展和塑造全球产业竞争力的关键支撑,工业大数据则是工业互联网实现工业要素互联之后的核心价值创造者。随着大数据行业的发展,工业数据收集呈现时间维度不断延长、数据范围不断扩大、数据粒度不断细化的趋势。以上三个维度的变化使得企业所积累的数据量以加速度的方式在增加,最终构成了工业大数据的集合。为完成工业大数据分析工作,你所在的小组将应用大数据技术,以Scala作为整个项目的基础开发语言,基于大数据平台综合利用Hudi、Spark、Flink、Vue.js等技术,对数据进行处理、分析及可视化呈现,你们作为该小组的技术人员,请按照下面任务完成本次工作。

任务A:大数据平台搭建(容器环境)(15分)环境说明:子任务一:Hadoop HA安装配置本任务需要使用root用户完成相关配置,安装Hadoop需要配置前置环境。

命令中要求使用绝对路径,具体要求如下:1、从宿主机/opt目录下将文件hadoop-3.1.3.tar.gz、jdk-8u212-linux-x64.tar.gz,apache-zookeeper-3.5.7-bin.tar.gz复制到容器Master中的/opt/software路径中(若路径不存在,则需新建),分别将Master节点Hadoop、ZooKeeper、JDK安装包解压到/opt/module路径中(若路径不存在,则需新建),其中将JDK、Hadoop解压命令复制并粘贴至客户端桌面【Release\任务A提交结果.docx】中对应的任务序号下;2、请完成host相关配置,将三个节点分别命名为master、slave1、slave2并做免密登录,修改容器中/etc/profile文件,设置JDK环境变量并使其生效,分发jdk至slave1、slave2中,均配置完毕后在Master节点分别执行“java -version”和“javac”命令,将命令行执行结果分别截图并粘贴至客户端桌面【Release\任务A提交结果.docx】中对应的任务序号下;3、配置好zookeeper,其中zookeeper使用集群模式,分别在master、slave1、slave2作为其集群的节点,使用zkServer.sh status获取zookeeper服务端状态,将命令和结果截图粘贴至客户端桌面【Release\任务A提交结果.docx】中对应的任务序号下(注:只截取三个节点中zookeeper server 角色模式为leader的节点);4、配置好Hadoop HA,请将nodes.hadoopcluster设置为nn1、nn2,同时yarn.resourcemanager.ha.rm-ids设置为rm1、rm2,并在Master启动nn1与rm1,在slave1启动nn2与rm2,将master、slave1、slave2均作为datanode,分发hadoop至slave1、slave2中,启动yarn与hdfs的HA集群(Hadoop HA集群),并在Master节点上使用命令分别查看服务nn2与rm2进程状态,并将查看命令及结果截图粘贴至客户端桌面【Release\任务A提交结果.docx】中对应的任务序号下;5、Hadoop HA配置并启动完毕后,使用jps在slave1节点查看服务进程,将查看命令及结果截图粘贴至客户端桌面【Release\任务A提交结果.docx】中对应的任务序号下。

Flume的运行机制详解

Flume的运行机制详解

Flume的运⾏机制详解Flume原是Cloudera公司提供的⼀个⾼可⽤的、⾼可靠的、分布式海量⽇志采集、聚合和传输系统,⽽后纳⼈到了Apache旗下,作为⼀个顶级开源项⽬。

Apache Flume不仅只限于⽇志数据的采集,由于Flume采集的数据源是可定制的,因此Flume还可⽤于传输⼤量事件数据,包括但不限于⽹络流量数据、社交媒体⽣成的数据、电⼦邮件消息以及⼏乎任何可能的数据源。

当前Flume分为两个版本: Flume 0.9x版本,统称Flume-og(original generation)和Flume 1.x版本,统称Flume-ng(next generation)。

由于早期的Flume-og存在设计不合理、代码臃肿、不易扩展等问题,因此在Flume纳⼊到Apache旗下后,开发⼈员对Cloudera Flume的代码进⾏了重构,同时对Flume功能进⾏了补充和加强,并重命名为Apache Flume,于是就出现了Flume-ng与Flume-og两种截然不同的版本。

⽽在实际开发中,多数使⽤⽬前⽐较流⾏的Flumeng版本进⾏Flume开发。

Flume运⾏机制Flume的核⼼是把数据从数据源(如WebServer)通过数据采集器(Source)收集过来,再将收集的数据通过缓冲通道(Channel)汇集到指定的接收器(Sink)。

这⾥可以参考官⽅的架构图,具体展⽰Flume的运⾏机制,如下图所⽰。

flume基本架构从图上可以看出,Flume基本架构中有⼀个Agent(代理),它是Flume的核⼼⾓⾊,Flume Agent是⼀个JVM进程,它承载着数据从外部源流向下⼀个⽬标的3个核⼼组件:Source、Channel和Sink。

结合上图,对这3个重要组件进⾏说明,具体如下。

●Source(数据采集器):⽤于源数据的采集(如上图,从⼀个Web服务器采集源数据),然后将采集到的数据写⼈到Channel中并流向Sink;●Channel(缓冲通道):底层是⼀个缓冲队列,对Source中的数据进⾏缓存,将数据⾼效、准确地写⼈Sink,待数据全部到达Sink后,Flume就会删除该缓存通道中的数据;●Sink(接收器):接收并汇集流向Sink的所有数据,根据需求,可以直接进⾏集中式存储(如上图,采⽤HDFS进⾏存储),也可以继续作为数据源传⼈其他远程服务器或者Source中。

flume的数据处理流程

flume的数据处理流程

flume的数据处理流程英文回答:Flume is a distributed system used for collecting, aggregating, and moving large amounts of data from various sources to a centralized data store or processing system.It provides a reliable and scalable solution for ingesting and processing data in real-time.The data processing flow in Flume consists of three main components: sources, channels, and sinks.Sources are responsible for collecting data from different sources such as log files, network sockets, or external systems. They receive the data and pass it to the channels for further processing. Flume provides various built-in sources, such as Avro, Netcat, and Exec, which can be configured to collect data from different sources.Channels act as temporary storage for the data receivedfrom the sources. They provide a buffer between the sources and sinks, ensuring that the data is not lost in case of temporary failures or high data rates. Flume supports different types of channels, including memory, file, and Kafka channels, each with its own advantages and use cases.Sinks are responsible for delivering the data from the channels to the desired destination, such as Hadoop Distributed File System (HDFS), Apache Kafka, or Apache Hive. Flume provides a variety of sinks, including HDFS sink, Kafka sink, and Hive sink, which can be configured based on the destination system requirements.The data processing flow in Flume can be customized and extended by using interceptors and selectors. Interceptors allow modifying or enriching the data before it is storedin the channels, while selectors determine which events should be selected for processing based on certain criteria.To illustrate the data processing flow in Flume, let's consider an example. Suppose we have a web server that generates log files containing information about userrequests. We want to collect and store these log files in HDFS for further analysis.In this scenario, we can configure Flume with an Avro source to collect the log files from the web server. The Avro source will receive the log files and pass them to a memory channel for temporary storage. We can use an interceptor to parse the log files and extract relevant information, such as the user's IP address or the requested URL.Once the log files are processed by the interceptor, they are stored in the memory channel. From the memory channel, a HDFS sink can be configured to deliver the log files to HDFS for storage. The HDFS sink will write the log files to the specified HDFS directory, making themavailable for further analysis using tools like Apache Spark or Apache Hive.中文回答:Flume是一个分布式系统,用于从各种来源收集、聚合和移动大量数据到集中的数据存储或处理系统。

flume source参数详解

flume source参数详解

Flume是Apache的一个分布式、可靠和可用性高的大数据收集系统。

它主要用于将大量的数据从不同的数据源收集到Hadoop的HDFS中,以供后续的数据处理和分析。

在Flume中,source是指数据收集的源头,它负责从数据源读取数据并将数据传输给Flume的channel。

二、Flume Source的作用1. 数据源类型多样性Flume支持多种数据源,包括日志文件、消息队列、网络数据等,而Flume的source模块负责与不同类型的数据源进行交互,将数据收集到Flume中来。

2. 数据收集的灵活性Flume的source模块支持自定义的插件,用户可以根据自己的需求开发特定的source插件,以支持特定的数据源类型。

三、Flume Source参数详解1. typetype参数指定了source的类型,用于告诉Flume要使用哪种类型的source模块来收集数据。

常见的source类型包括avro、thrift、2. channelschannels参数指定了source将数据发送给哪些channel。

一个source可以同时发送数据给多个channel,这也是Flume实现数据流的重要手段之一。

3. selector.typeselector.type参数用于指定source与channel之间的选择器类型。

Flume支持多种选择器类型,例如replicating、multiplexing等,用户可以根据实际需求选择合适的选择器类型。

4. interceptorsinterceptors参数用于指定对接收到的数据进行预处理的拦截器。

拦截器可以对数据进行过滤、格式转换等操作,以适配不同的数据要求。

5. capacitycapacity参数指定了source的缓冲区大小,用于控制source接收数据的能力。

如果数据源产生的数据速率超过了capacity的限制,那么部分数据可能会丢失。

6. bindingbinding参数用于指定source的监听位置区域和端口。

flume拦截器的三个案例

flume拦截器的三个案例

flume拦截器的三个案例今天整理下最近使⽤flume案例⼀使⽤ flume 监控⽇志⽂件传到 kafka,由于业务需要只需要将⽇志⾥的 json 数据发送到 Kafka 即可,⾮ json 数据直接进⾏过滤。

1、pom.xml<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>7</source><target>7</target></configuration></plugin><plugin><artifactId>maven-compiler-plugin</artifactId><version>2.3.2</version><configuration><source>1.8</source><target>1.8</target></configuration></plugin><plugin><artifactId>maven-assembly-plugin</artifactId><configuration><descriptorRefs><descriptorRef>jar-with-dependencies</descriptorRef></descriptorRefs></configuration><executions><execution><id>make-assembly</id><phase>package</phase><goals><goal>single</goal></goals></execution></executions></plugin></plugins></build><dependencies><dependency><groupId>org.apache.flume</groupId><artifactId>flume-ng-core</artifactId><version>1.9.0</version><scope>provided</scope></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.62</version></dependency></dependencies>2、JSONUtilimport com.alibaba.fastjson.JSONException;import com.alibaba.fastjson.JSONObject;/*** 判断参数是否是 JSON 数据*/public class JSONUtil {public static boolean isJSON(String log) {boolean flag = false;try {JSONObject.parseObject(log);flag = true;} catch (JSONException e) {}return flag;}}3、拦截器import org.apache.flume.Context;import org.apache.flume.Event;import org.apache.flume.interceptor.Interceptor;import java.nio.charset.StandardCharsets;import java.util.Iterator;import java.util.List;/*** ⾃定义拦截器* 1、实现 Interceptor* 2、实现 Interceptor 的 4 个⽅法*/public class ETLInterceptor implements Interceptor {public void initialize() {}/*** 过滤⾮ JSON 数据* @param event* @return*/public Event intercept(Event event) {//过滤 event 的数据格式私发不满⾜JSONbyte[] body = event.getBody();String log = new String(body, StandardCharsets.UTF_8);//判断是否是JSONboolean flag = JSONUtil.isJSON(log);return flag ? event : null;}public List<Event> intercept(List<Event> list) {//使⽤迭代器将处理后的 null 删除Iterator<Event> iterator = list.iterator();while (iterator.hasNext()) {Event next = iterator.next();if (intercept(next) == null) {iterator.remove();}}return list;}public void close() {}public static class Builder implements Interceptor.Builder {@Overridepublic Interceptor build() {return new ETLInterceptor();}@Overridepublic void configure(Context context) {}}}4、编写完即可打包,将带有jar ⽂件的 jar ⽂件上传服务器-rw-rw-r--. 1 hui hui 662626 Jan 3009:51 collect.demo0125-1.0-SNAPSHOT-jar-with-dependencies.jar[hui@hadoop201 lib]$ pwd/opt/module/flume/lib5、编写 flume 配置⽂件[hui@hadoop201 job]$ cat file_to_kafka.conf#为各组件命名a1.sources = r1a1.channels = c1#描述sourcea1.sources.r1.type = TAILDIRa1.sources.r1.filegroups = f1a1.sources.r1.filegroups.f1 = /opt/module/applog/log/app.*a1.sources.r1.positionFile = /opt/module/flume/taildir_position.jsona1.sources.r1.interceptors = i1a1.sources.r1.interceptors.i1.type = org.wdh01.flume.interceptor.ETLInterceptor$Builder#描述channela1.channels.c1.type = org.apache.flume.channel.kafka.KafkaChannela1.channels.c1.kafka.bootstrap.servers = hadoop201:9092,hadoop202:9092a1.channels.c1.kafka.topic = topic_log#flume 默认 Event传输,false 表⽰已字符串传输,不使⽤默认传输a1.channels.c1.parseAsFlumeEvent = false#绑定source和channel以及sink和channel的关系a1.sources.r1.channels = c16、flume 启停脚本[hui@hadoop201 ~]$ cat bin/f1.sh#!/bin/shcase $1 in"start"){for i in hadoop201 hadoop202doecho " --------启动 $i 采集flume-------"ssh $i "nohup /opt/module/flume/bin/flume-ng agent -n a1 -c /opt/module/flume/conf/ -f /opt/module/flume/job/file_to_kafka.conf >/dev/null 2>&1 &"done};;"stop"){for i in hadoop201 hadoop202doecho " --------停⽌ $i 采集flume-------"ssh $i "ps -ef | grep file_to_kafka.conf | grep -v grep |awk '{print \$2}' | xargs -n1 kill -9 "done};;esac案例⼆使⽤flume将案例⼀的kafka⾥的JSON数据传到hdfs的⽬标路径,由于时间延迟,为了避免零点漂移情况的发⽣,需要对读取的json 的时间做处理1、拦截器 pom ⽂件同案例⼀import com.alibaba.fastjson.JSONObject;import org.apache.flume.Context;import org.apache.flume.Event;import org.apache.flume.interceptor.Interceptor;import java.nio.charset.StandardCharsets;import java.util.List;import java.util.Map;/*** 时间戳⾃定义拦截器*/public class TimeStampInterceptor implements Interceptor {@Overridepublic void initialize() {}@Overridepublic Event intercept(Event event) {//修改 header 中的时间,改为⽇志数据中的时间,提供 hdfs sink 使⽤,使⽤正常的时间作为⽇志⽂件名byte[] body = event.getBody();String log = new String(body, StandardCharsets.UTF_8);JSONObject jsonObject = JSONObject.parseObject(log);String timeStamp = jsonObject.getString("ts");//获取 headerMap<String, String> headers = event.getHeaders();headers.put("timestamp", timeStamp);//注意 headers 的 key 是固定的 timestamp return event;}@Overridepublic List<Event> intercept(List<Event> list) {for (Event event : list) {intercept(event);}return list;}@Overridepublic void close() {}public static class Builder implements Interceptor.Builder {@Overridepublic Interceptor build() {return new TimeStampInterceptor();}@Overridepublic void configure(Context context) {}}}3、打包上传同案例⼀4、flume配置⽂件[hui@hadoop203 job]$ cat kafka_to_hdfs.conf## 组件a1.sources=r1a1.channels=c1a1.sinks=k1## source1a1.sources.r1.type = org.apache.flume.source.kafka.KafkaSource#满⾜5k 及发送a1.sources.r1.batchSize = 5000#满⾜2s 发送a1.sources.r1.batchDurationMillis = 2000#kafka 链接a1.sources.r1.kafka.bootstrap.servers = hadoop201:9092,hadoop202:9092,hadoop203:9092a1.sources.r1.kafka.topics=topic_loga1.sources.r1.interceptors = i1a1.sources.r1.interceptors.i1.type = org.wdh01.flume.interceptor.TimeStampInterceptor$Builder## channel1a1.channels.c1.type = file#检查点⽂件a1.channels.c1.checkpointDir = /opt/module/flume/checkpoint/behavior1#落盘⽂件a1.channels.c1.dataDirs = /opt/module/flume/data/behavior1/a1.channels.c1.maxFileSize = 2146435071a1.channels.c1.capacity = 1000000a1.channels.c1.keep-alive = 6## sink1a1.sinks.k1.type = hdfsa1.sinks.k1.hdfs.path = /origin_data/gmall/log/topic_log/%Y-%m-%da1.sinks.k1.hdfs.filePrefix = log-a1.sinks.k1.hdfs.rollInterval = 10a1.sinks.k1.hdfs.rollSize = 134217728a1.sinks.k1.hdfs.rollCount = 0## 控制输出⽂件是原⽣⽂件。

简述flume agent的内部原理

简述flume agent的内部原理

简述flume agent的内部原理Flume Agent的内部原理Flume Agent是Apache Flume中的一个核心组件,用于收集、传输和存储大规模数据。

它是一个可扩展的数据采集工具,可以从各种数据源收集数据,并将数据传输到目标存储系统。

本文将简述Flume Agent的内部原理。

1. 架构概述Flume Agent的架构包括三个主要组件:Source、Channel和Sink。

Source负责从数据源收集数据,Channel负责缓存数据,Sink负责将数据传输到目标存储系统。

这三个组件通过事件(Event)进行数据传输。

2. Source组件Source组件是Flume Agent的入口,用于接收数据并将其转换为Flume内部定义的事件。

Source组件可以从多种数据源接收数据,如日志文件、网络端口、消息队列等。

不同的Source组件根据数据源的不同而有所差异,但其基本原理相同。

当Source组件接收到数据后,会将其封装为Flume事件,并将事件传递给Channel组件。

事件包含了数据本身以及一些元数据,如时间戳、主机名等。

Source组件可以进行数据过滤和转换,以满足特定的需求。

3. Channel组件Channel组件是Flume Agent的缓存层,用于暂存从Source组件接收到的事件。

Channel组件具有高可用性和可靠性,可以在事件传输过程中进行缓冲和重试,以防止数据丢失。

Flume提供了多种类型的Channel组件,如Memory Channel、File Channel和Kafka Channel等。

不同的Channel组件适用于不同的场景。

例如,Memory Channel适用于高吞吐量的场景,而File Channel适用于大数据量的场景。

4. Sink组件Sink组件是Flume Agent的出口,用于将事件传输到目标存储系统。

Sink组件可以将事件传输到多种目标,如HDFS、HBase、Kafka等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Flume安装与配置过程一、Flume概述
简单的来说,就是Agent把采集到的数据定时发送给Collector,Collector接收Agent发送的数据并把数据写到指定的位置(Storage)。

二、安装Flume
2.1.准备安装介质
Flume是Java开发实现的,所以在安装Flume之前要先安装JDK,JDK的安装和配置本文就不做介绍了。

Flume下载地址:/cdh/3/
2.2.安装Flume
我们准备安装1个Master、1个Collector和1个Agent,这三个角色分别安装在3台机器上。

我们先选择3台Linux机器且这三台机器网络互通(在一个网段),PC1 / PC2 / PC3。

在PC1上安装Master,PC2上安装Collector,PC3上安装Agent。

Master、Collector、Agent 的安装文件一样,只是配置信息不一样。

Flume的所有安装过程都是用root用户进行操作。

2.2.1.安装Master
A.上传Flume安装文件flume-distribution-0.9.4-bin.tar.gz到/opt/psrv/programes目录下,解压安装包:tar –zvxf flume-distribution-0.9.4-bin.tar.gz到当前目录。

B.到flume-distribution-0.9.4/bin目录下,配置文件flume-env.sh.template重命名为flume-env.sh。

如果该目录下的脚本没有执行权限,则执行chmod +x *.sh 添加脚本执行权限。

修改flume-env.sh文件,在文件末尾加上如下代码:
如果系统没有配置Java环境变量,则还要在flume-env.sh中配置flume运行的Java环境。

C.到flume-distribution-0.9.4/conf目录下,配置文件flume-site.xml.template重命名为flume-site.xml。

修改flume-site.xml配置文件:
配置Master,flume.master.servers可以配置多个Master,IP之间使用逗号隔开;
flume-site.xml中的配置可以参考flume-conf.xml;
E.Master启动和停止,使用flume-distribution-0.9.4/bin目录下的flume命令进行Master 启停操作。

启动Master命令:nohup ./flume master & ;停止Master命令:./flume killmaster。

如果不能停止Master请杀掉Master的进程(2个),再删除/tmp/ flumemaster.pid文件(该文件记录了Master服务主进程号)。

2.2.2.安装Collector
步骤A/B/C与2.2.1-A/B/C相同
A.略
B.略
C.略
D. 到flume-distribution-0.9.4/conf目录下,修改配置文件flume-site.xml(Master配置在C步骤已经完成)添加Collector配置:
启动Collector命令:nohup ./flume node_nowatch –n collectorName &
2.2.
3.安装Agent
步骤A/B/C与2.2.1-A/B/C相同
A.略
B.略
C.略
D. 到flume-distribution-0.9.4/conf目录下,修改配置文件flume-site.xml(Master配置在C步骤已经完成)添加Agent配置:
启动Agent命令:nohup ./flume node_nowatch –n agentName &
三、配置Flume
3.1.启动Flume基础服务
Master : nohup ./flume master &
Collector : nohup ./flume node_nowatch –n collector_192.168.100.32 &
Agent : nohup ./flume node_nowatch –n agent_192.168.100.33 &
服务启动完成后,查看控制台输出,如果没有错误则继续配置Flume。

3.2.配置Flume
3.2.1.配置Agent
打开Master 管理界面(http://192.168.100.31:35871/flumemaster.jsp ),选择config 选项卡。

选择Agent 节点并填入日志配置信息:
提交之后,查看命令提交结果,查看Master 管理界面或查看Master 控制台:
3.2.2.配置Collector
提交之后,查看命令提交结果,查看Master 管理界面或查看Master 控制台:
3.3.测试Flume 数据采集
在Agent 机器上创建/paas_log/agent.log 文件,在Collector 机器上创建/flume/collect 目录。

登陆Agent 机器,使用echo 命令打印字符串输入到/paas_log/agent.log 文件中(多输入几次):echo HelloWorld [ `date`] >> /paas_log/agent.log 。

等待一会,登陆Collector 机器,进入/flume/collect 目录下,查看收集到的Agent 数据。

四、Flume高级配置其他。

相关文档
最新文档