【大数据技术Hadoop+Spark】Flume、Kafka的简介及安装(图文解释 超详细)

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 【大数据技术Hadoop+Spark】Flume、Kafka的简介及安装(图文解释 超详细)

Flume简介

Flume是Cloudera提供的一个高可用、高可靠、分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。

Flume主要由3个重要的组件构成:

1)Source:完成对日志数据的收集,分成transtion 和 event 打入到channel之中。

2)Channel:主要提供一个队列的功能,对source提供中的数据进行简单的缓存。

3)Sink:取出Channel中的数据,进行相应的存储文件系统,数据库,或者提交到远程服务器

Flume逻辑上分三层架构:agent,collector,storage。agent用于采集数据,agent是Flume中产生数据流的地方,同时,agent会将产生的数据流传输到collector。collector的作用是将多个agent的数据汇总后,加载到storage中。storage是存储系统,可以是一个普通file,也可以是HDFS,HIVE,HBase等。

Flume安装

1)下载apache-flume-1.8.0-bin.tar.gz,下载网址是:

下载网址

2)执行tar -zxvf apache-flume-1.8.0-bin.tar.gz -C /hadoop/ 命令进行解压缩,此例的解压路径是/hadoop。

3)编辑/etc/profile文件,加入以下内容:(以前的JAVA配置在安装hadoop时已经配置)。

4) 生成conf路径下的flume-env.sh 配置文件,执行拷贝命令

5)编辑flume-env.sh文件,在文件的最开始位置增加一行内容,根据你的jdk安装路径设置JAVA_HOME变量

export  JAVA_HOME=/usr/java/jdk1.8.0_161

6) 生成conf路径下的/flume-conf.properties 配置文件,执行拷贝命令

7)编辑flume-env.sh文件,在文件末尾加入agent1、source1、channel1、sink1配置

8)启动服务,命令行上执行以下命令:

flume-ng agent -n agent1 -c conf -f
  /hadoop/apache-flume-1.8.0-bin/conf/flume-conf.properties -Dflume.root.logger=DEBUG,console

9)测试:在/hadoop/apache-flume-1.8.0-bin/logs创建一个文件test.txt,输入文本hello flume,可以看到flume的agent自动上传了我们刚刚创建的文件

Kafka简介

Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理生产者和消费者的所有动作流数据。生产者(Produce)向Kafka集群发送消息,在发送消息之前,会对消息进行分类,即主题(Topic),通过对消息指定主题可以将消息分类,消费者可以只关注自己需要的Topic中的消息。消费者(Consumer)通过与kafka集群建立长连接的方式,不断地从集群中拉取消息,然后可以对这些消息进行处理

Kafka安装

1)下载/kafka_2.11-2.4.1.tgz,

2)执行tar -zxvf  kafka_2.11-2.4.1.tgz -C /hadoop/ 命令进行解压缩,此例的解压路径是/hadoop.

3)编辑/etc/profile文件,加入以下内容

export ZOOKEEPER_HOME=/hadoop/zookeeper-3.4.13
export KAFKA_HOME=/hadoop/kafka_2.11-2.4.1
export PATH=$PATH:$KAFKA_HOME/bin

4)修改config路径下的server.properties 配置文件

broker.id=0
listeners=PLAINTEXT://172.16.106.69:9092
advertised.listeners=PLAINTEXT://172.16.106.69:9092
zookeeper.connect=172.16.106.69:2181,172.16.106.70:2181,172.16.106.71:2181
#根据自己ip对应修改即可

5)将安装文件拷贝到另两个节点,命令如下:

scp -r kafka_2.11-2.4.1 root@172.16.106.70:/hadoop/
scp -r kafka_2.11-2.4.1 root@172.16.106.71:/hadoop/

6)另外两个节点上的配置

broker.id 分别修改成: 1 和 2
 listeners 在ip那里分别修改成子节点对应的
 advertised.listeners ip那里分别修改成子节点对应的

(2)另外两个节点上配置kafka环境变量

7)启动服务,  在三个节点都启动kafka上执行以下命令:

./kafka-server-start.sh /hadoop/kafka_2.11-2.4.1/config/server.pro

8)测试。 在主节点上创建主题TestTopic,命令如下:

kafka-topics.sh 
--zookeeper 172.16.106.69:2181,172.16.106.70:2181,172.16.106.71:2181 
--topic TestTopic --replication-factor 1 --partitions 1 --create

在主节点上启动一个生产者,命令如下:

kafka-console-producer.sh
 --broker-list 172.16.106.69:9092,172.16.106.70:9092,172.16.106.71:9092
   --topic TestTopic

在其他两个节点上分别创建消费,命令如下:

kafka-console-consumer.sh 
--bootstrap-server ,172.16.106.70:9092 --topic TestTopic --from-beginning
kafka-console-consumer.sh
 --bootstrap-server ,172.16.106.71:9092 --topic TestTopic --from-beginning

在主节点生产者命令行那里输入一段话

然后你就会发现在其他两个消费者节点那里也出现了这句话,即消费到了该数据,演示如下

创作不易 觉得有帮助请点赞关注收藏~~~

相关文章
|
1月前
|
Cloud Native 数据处理 云计算
探索云原生技术在大数据分析中的应用
随着云计算技术的不断发展,云原生架构作为一种全新的软件开发和部署模式,正逐渐引起企业的广泛关注。本文将探讨云原生技术在大数据分析领域的应用,介绍其优势与挑战,并探讨如何利用云原生技术提升大数据分析的效率和可靠性。
|
15天前
|
分布式计算 Hadoop 大数据
大数据技术与Python:结合Spark和Hadoop进行分布式计算
【4月更文挑战第12天】本文介绍了大数据技术及其4V特性,阐述了Hadoop和Spark在大数据处理中的作用。Hadoop提供分布式文件系统和MapReduce,Spark则为内存计算提供快速处理能力。通过Python结合Spark和Hadoop,可在分布式环境中进行数据处理和分析。文章详细讲解了如何配置Python环境、安装Spark和Hadoop,以及使用Python编写和提交代码到集群进行计算。掌握这些技能有助于应对大数据挑战。
|
2天前
|
分布式计算 大数据 数据处理
[AIGC大数据基础] Spark 入门
[AIGC大数据基础] Spark 入门
|
24天前
|
NoSQL 大数据 数据挖掘
现代数据库技术与大数据应用
随着信息时代的到来,数据量呈指数级增长,对数据库技术提出了前所未有的挑战。本文将介绍现代数据库技术在处理大数据应用中的重要性,并探讨了一些流行的数据库解决方案及其在实际应用中的优势。
|
29天前
|
机器学习/深度学习 人工智能 数据可视化
基于Python的数据可视化技术在大数据分析中的应用
传统的大数据分析往往注重数据处理和计算,然而数据可视化作为一种重要的技术手段,在大数据分析中扮演着至关重要的角色。本文将介绍如何利用Python语言中丰富的数据可视化工具,结合大数据分析,实现更直观、高效的数据展示与分析。
|
1月前
|
存储 NoSQL 大数据
新型数据库技术在大数据分析中的应用与优势探究
随着大数据时代的到来,传统数据库技术已经无法满足海量数据处理的需求。本文将探讨新型数据库技术在大数据分析中的应用情况及其所带来的优势,为读者解析数据库领域的最新发展趋势。
|
2月前
|
分布式计算 DataWorks IDE
MaxCompute数据问题之忽略脏数据如何解决
MaxCompute数据包含存储在MaxCompute服务中的表、分区以及其他数据结构;本合集将提供MaxCompute数据的管理和优化指南,以及数据操作中的常见问题和解决策略。
47 0
|
2月前
|
SQL 存储 分布式计算
MaxCompute问题之下载数据如何解决
MaxCompute数据包含存储在MaxCompute服务中的表、分区以及其他数据结构;本合集将提供MaxCompute数据的管理和优化指南,以及数据操作中的常见问题和解决策略。
38 0
|
2月前
|
分布式计算 关系型数据库 MySQL
MaxCompute问题之数据归属分区如何解决
MaxCompute数据包含存储在MaxCompute服务中的表、分区以及其他数据结构;本合集将提供MaxCompute数据的管理和优化指南,以及数据操作中的常见问题和解决策略。
36 0
|
2月前
|
分布式计算 DataWorks BI
MaxCompute数据问题之运行报错如何解决
MaxCompute数据包含存储在MaxCompute服务中的表、分区以及其他数据结构;本合集将提供MaxCompute数据的管理和优化指南,以及数据操作中的常见问题和解决策略。
38 1

热门文章

最新文章