2023_Spark_实验二十八:Flume部署及配置

实验目的:熟悉掌握Flume部署及配置

实验方法:通过在集群中部署Flume,掌握Flume配置

实验步骤:

一、Flume简介

Flume是一种分布式的、可靠的和可用的服务,用于有效地收集、聚合和移动大量日志数据。它有一个简单灵活的基于流数据流的体系结构。它具有健壮性和容错性,具有可调可靠性机制和多种故障转移和恢复机制。它使用了一个简单的可扩展数据模型,允许在线分析应用程序。其体系结构如下:

2023_Spark_实验二十八:Flume部署及配置_第1张图片

二、Flume安装与配置

下载Flume

https://archive.apache.org/dist/flume/1.9.0/apache-flume-1.9.0-bin.tar.gz

安装Flume

将下载好的Flume上传到集群中主节点,解压【注意改成自己的安装部署路径】

tar -zvxf apache-flume-1.9.0-bin.tar.gz -C /opt/module

配置Flume环境变量,在~/.bash_profile 或 ~/.bashrc中配置

# FLUME_HOME
FLUEM_HOME=/opt/module/apache-flume-1.9.0-bin

PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$KAFKA_HOME/bin:$HIVE_HOME/bin:$FLUEM_HOME/bin:$SPARK_HOME/bin

export JAVA_HOME HADOOP_HOME KAFKA_HOME HIVE_HOME FLUEM_HOME SPARK_HOME PATH

让环境变量生效并检查效果

# 刷新环境变量
source ~/.bash_profile

# 检查flume效果
flume-ng version

2023_Spark_实验二十八:Flume部署及配置_第2张图片

三、Flume基本操作

Flume的基础操作教程资料:

Flume 1.9.0 User Guide — Apache Flume

Flume入门案例

简单Flume使用案例:通过一个单节点Flume部署。此配置允许用户生成事件并随后将其记录到控制台。

在Flume的安装目录conf下,创建一个hello.conf配置文件

#声明三种组件 a1 = agent1
a1.sources = r1
a1.channels = c1
a1.sinks = k1
#定义source信息
a1.sources.r1.type=netcat
a1.sources.r1.bind=hd1
a1.sources.r1.port=9888
#定义sink信息
a1.sinks.k1.type=logger
#定义channel信息
a1.channels.c1.type=memory
a1.channels.c1.capacity=1000
a1.channels.c1.transactionCapacity=100
#绑定在一起
a1.sources.r1.channels=c1
a1.sinks.k1.channel=c1

启动flume

/opt/module/apache-flume-1.9.0-bin/bin/flume-ng agent -f /opt/module/apache-flume-1.9.0-bin/conf/hello.conf -n a1 -Dflume.root.logger=INFO,console

2023_Spark_实验二十八:Flume部署及配置_第3张图片

重新打开一个terminal 远程回话,启动nc,检查启动的flume是否收到消息。

nc hd1 9888

2023_Spark_实验二十八:Flume部署及配置_第4张图片

通过简单测试确定flume已经正常部署

实验结果:

本次实验通过在集群中单节点部署flume,并通过一个简单案例掌握flume使用方法。成功实现通过flume采集网络字节流数据。

你可能感兴趣的:(Spark实验,flume,大数据)