大数据组件-Flume集群环境搭建

这篇具有很好参考价值的文章主要介绍了大数据组件-Flume集群环境搭建。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

🥇🥇【大数据学习记录篇】-持续更新中~🥇🥇


个人主页:beixi@
本文章收录于专栏(点击传送):【大数据学习】

💓💓持续更新中,感谢各位前辈朋友们支持学习~💓💓

1.Flume集群环境介绍

Flume是一个分布式、可靠和高可用性的数据采集工具,用于将大量数据从各种源采集到Hadoop生态系统中进行处理。在大型互联网企业的数据处理任务中,Flume被广泛应用。

Flume集群环境介绍:

  • Agent:Flume的基本组成单元是Agent,用于在不同的节点之间传输数据。Agent可以是单节点或分布式部署。

  • Source:Source是Flume数据采集的起点,用于从数据源(如日志文件、网络流、消息队列等)中获取数据并将其发送到Channel中。Flume支持多种Source类型,如Avro、Netcat、Exec等。

  • Channel:Channel是Flume的缓存区,用于暂存从Source获取的数据。Flume支持多种Channel类型,如Memory、File、Kafka等,可以根据数据量和数据传输速率选择合适的Channel类型。

  • Sink:Sink是Flume的目标,用于将数据输出到指定的目标位置。Flume支持多种Sink类型,如HDFS、HBase、Elasticsearch等。

  • Event:Event是Flume传输的基本单元,表示采集到的数据。一个Event包含Header和Body两个部分,其中Header用于描述Event的属性(如时间戳、数据类型等),Body是实际的数据内容。

  • Collector:Collector用于收集Flume的监控信息,如Agent的启停状态、数据采集速率等。Flume提供了Web界面和API接口来实现监控和管理。


Flume逻辑上分三层架构:agent,collector,storage。agent用于采集数据,agent是Flume中产生数据流的地方,同时,agent会将产生的数据流传输到collector。collector的作用是将多个agent的数据汇总后,加载到storage中。storage是存储系统,可以是一个普通file,也可以是HDFS,HIVE,HBase等。
大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

2.搭建环境介绍

本次搭建的环境有:
Oracle Linux 7.4,三台虚拟机,分别为master,slave1,slave2
JDK1.8.0_144
Hadoop2.7.4集群环境
Flume1.6.0

3.启动HDFS集群环境

1.打开master命令窗口,启动HDFS平台。

start-dfs.sh

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

2.查看”主节点”上HDFS守护进程

jps

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

3.打开slave1从机命令窗口,查看HDFS守护进程。

jps

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

4.打开slave2从机命令窗口,查看HDFS守护进程。

jps

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

4.Flume集群环境搭建

1.打开master命令窗口。
大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

2.解压Flume压缩文件至/opt目录。

tar -zxvf experiment/file/apache-flume-1.6.0-bin.tar.gz -C /opt

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

3.修改解压后文件夹的名字为flume。

mv /opt/apache-flume-1.6.0-bin /opt/flume

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

4.查看Flume配置文件目录conf

ll /opt/flume/conf/

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

5.复制Flume配置文件flume-env.sh.template名为flume-env.sh

cp /opt/flume/conf/flume-env.sh.template /opt/flume/conf/flume-env.sh

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

6.查找Java安装路径

echo $JAVA_HOME

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

7.配置flume-env.sh文件

vim /opt/flume/conf/flume-env.sh

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

8.按键 i ,更改代码如下:

export JAVA_HOME=/usr/lib/java-1.8

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

9.按键Esc,按键”:wq!”保存退出。
10.通过ssh命令,跳转至slave1机器命令窗口创建日志文件夹,再退回到master命令窗口。

ssh slave1
mkdir -p /root/flume/logs
exit

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

11.通过ssh命令,跳转至slave2机器命令窗口创建日志文件夹,再退回到master命令窗口。

ssh slave2
mkdir -p /root/flume/logs
exit

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

12.在当前“主节点”命令窗口中,配置slave.conf文件,进行配置。

vim /opt/flume/conf/slave.conf

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

13.按键 i ,更改代码如下:

# 主要作用是监听目录中的新增数据,采集到数据之后,输出到avro (输出到agent)
# 注意:Flume agent的运行,主要就是配置source channel sink
# 下面的a1就是agent的代号,source叫r1 channel叫c1 sink叫k1
a1.sources = r1
a1.sinks = k1
a1.channels = c1
#具体定义source
a1.sources.r1.type = spooldir
#先创建此目录,保证里面空的
a1.sources.r1.spoolDir = /root/flume/logs
#对于sink的配置描述 使用avro日志做数据的消费
a1.sinks.k1.type = avro
# hostname是最终传给的主机名称或者ip地址
a1.sinks.k1.hostname = master
a1.sinks.k1.port = 44444
#对于channel的配置描述 使用文件做数据的临时缓存 这种的安全性要高
a1.channels.c1.type = file
a1.channels.c1.checkpointDir = /root/flume/checkpoint
a1.channels.c1.dataDirs = /root/flume/data
#通过channel c1将source r1和sink k1关联起来
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

14.按键Esc,按键”:wq!”保存退出。
15.将flume分发至slave1、slave2机器。

scp -r /opt/flume slave1:/opt

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

scp -r /opt/flume slave2:/opt

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

16.配置master.conf文件

vim /opt/flume/conf/master.conf

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

17.按键 i ,更改代码如下:

# 获取slave1,2上的数据,聚合起来,传到hdfs上面
# 注意:Flume agent的运行,主要就是配置source channel sink
# 下面的a1就是agent的代号,source叫r1 channel叫c1 sink叫k1

a1.sources = r1
a1.sinks = k1
a1.channels = c1

#对于source的配置描述 监听avro
a1.sources.r1.type = avro
# hostname是最终传给的主机名称或者ip地址
a1.sources.r1.bind = master
a1.sources.r1.port = 44444


#定义拦截器,为消息添加时间戳  
a1.sources.r1.interceptors = i1  
a1.sources.r1.interceptors.i1.type = org.apache.flume.interceptor.TimestampInterceptor$Builder

#对于sink的配置描述 传递到hdfs上面
a1.sinks.k1.type = hdfs  
#集群的nameservers名字
#单节点的直接写:hdfs://主机名(ip):9000/xxx
#ns是hadoop集群名称
# a1.sinks.k1.hdfs.path = hdfs://ns/flume/%Y%m%d  
a1.sinks.k1.hdfs.path = /flume/events/root
a1.sinks.k1.hdfs.filePrefix = events-  
a1.sinks.k1.hdfs.fileType = DataStream  
#不按照条数生成文件  
a1.sinks.k1.hdfs.rollCount = 0  
#HDFS上的文件达到128M时生成一个文件  
a1.sinks.k1.hdfs.rollSize = 134217728  
#HDFS上的文件达到60秒生成一个文件  
a1.sinks.k1.hdfs.rollInterval = 60  


#对于channel的配置描述 使用内存缓冲区域做数据的临时缓存
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100

#通过channel c1将source r1和sink k1关联起来
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1

大数据组件-Flume集群环境搭建,大数据技术学习,大数据,flume,运维,分布式

18.按键Esc,按键”:wq!”保存退出。
至此,Flume集群环境搭建就到此结束了,如果本篇文章对你有帮助记得点赞收藏+关注~文章来源地址https://www.toymoban.com/news/detail-689670.html

到了这里,关于大数据组件-Flume集群环境搭建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Kafka集群间同步数据方案-Flume

    Apache Flume 是一个分布式、高可靠、高可用的用来收集、聚合、转移不同来源的大量日志数据到中央数据仓库的工具。 系统要求 Java运行环境 - Java 1.8或更高版本 体系结构 Event是Flume定义的一个数据流传输的最小单元。Agent就是一个Flume的实例,本质是一个JVM进程,该JVM进程控制

    2024年02月11日
    浏览(36)
  • 一、大数据技术之Flume(简介)

    1.1 Flume定义 Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统。Flume基于流式架构,灵活简单。 1.2 Flume基础架构 Flume组成架构如下图所示。 1.2.1 Agent Agent是一个JVM进程,它以事件的形式将数据从源头送至目的地。 Agent主要有3个部分组成

    2024年02月16日
    浏览(28)
  • 大数据技术之flume——日志收集系统

    大数据需要解决的三个问题:采集、存储、计算。 Apache flume是一个分布式、可靠的、高可用的 海量日志数据采集、聚合和传输系统 ,将海量的日志数据从不同的数据源移动到一个中央的存储系统中。用一句话总结:Flume不生产数据,它只是数据的搬运工。 flume最主要的作用

    2024年02月06日
    浏览(27)
  • flume组件以及通过命令监控大数据平台转态

    可 以 从 官 网 下 载 Flume 组 件 安 装 包 , 下 载 地 址 如 下 URL 链 接 所 示 https://archive.apache.org/dist/flume/1.6.0/ 步骤一:使用 root 用户设置 Flume 环境变量,并使环境变量对所有用户生效。 步骤二:修改 Flume 相应配置文件。 首先,切换到 hadoop 用户,并切换当前工作目录到

    2023年04月24日
    浏览(25)
  • 大数据技术——Flume简介&安装配置&使用案例

        Flume是一种 可配置、高可用 的 数据采集 工具,主要用于采集来自各种流媒体的数据(Web服务器的日志数据等)并传输到集中式数据存储区域。     Flume 支持在日志系统中定制 各种数据发送方 ,用于收集数据;并且可以对数据进行简单处理,将其写到可定制的各种数

    2024年02月08日
    浏览(30)
  • 大数据技术之Hadoop(八)——Flume日志采集系统

    目录 素材 一、Flume的概述 1、Flume的认识 2、Flume的运行机制 (1)Source(数据采集器) (2)Channel(缓冲通道) (3)Sink(接收器) 3、Flume的日志采集系统结构 (1)简单结构 (2)复杂结构 二、Flume的基本使用 1、系统要求 2、Flume安装 (1)下载Flume (2)解压 (3)重命名 (4)配置

    2024年02月09日
    浏览(34)
  • 【Flume 01】Flume简介、部署、组件

    Flume是一个高可用、高可靠、分布式的海量日志采集、聚合和传输的系统 主要特性: 它有一个简单、灵活的基于流的数据流结构(使用Event封装) 具有负载均衡机制和故障转移机制 一个简单可扩展的数据模型(Source、Channel、Sink) Source组件: 从外界采集各种类型数据,将数据

    2024年02月16日
    浏览(65)
  • Flume学习-采集端口数据存入kafka

    启动zookeeper、kafka并创建kafka主题 2、创建flume-kafka.conf配置文件 用于采集socket数据后存入kafka 在flume文件夹中的conf下新建flume-kafka.conf配置文件 设置监听本地端口10050 netcat发送的socket数据,讲采集到的数据存入kafka的hunter主题中 3、启动flume ./bin/flume-ng :启动Flume-ng二进制文件。

    2024年02月03日
    浏览(33)
  • 【大数据技术】Spark+Flume+Kafka实现商品实时交易数据统计分析实战(附源码)

    需要源码请点赞关注收藏后评论区留言私信~~~ 1)Kafka 是一个非常通用的系统,你可以有许多生产者和消费者共享多个主题Topics。相比之下,Flume是一个专用工具被设计为旨在往HDFS,HBase等发送数据。它对HDFS有特殊的优化,并且集成了Hadoop的安全特性。如果数据被多个系统消

    2024年02月03日
    浏览(37)
  • 大数据平台组件日常运维操作说明(Hadoop/Zookeeper/Kafa/ES/Mysql/Spark/Flume/Logstash/Tomcat)

    hdfs 生产环境hadoop为30台服务器组成的集群,统一安装配置,版本号为2.7.7 部署路径:/opt/hadoop 启动用户:hadoop 配置文件: /opt/hadoop/config/hdfs-site.xml /opt/hadoop/config/core-site.xml hadoopy运行环境变量配置文件: hadoop-env.sh journalnode.env datanode.env namenode.env hadoop系统服务配置文件: z

    2024年02月03日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包