IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> SparkStreaming Kafka 集群环境搭建及测试 -> 正文阅读

[大数据]SparkStreaming Kafka 集群环境搭建及测试

搭建该环境需要安装zookeeper和Kafka。

安装、配置zookeeper的集群环境

zookeeper我们安装,需要对环境进行一定配置。

下载、安装及配置环境变量

安装zookeeper,我们需要将下载的zookeeper安装包解压到我们想要安装的地方。

下载网站:
https://dlcdn.apache.org/zookeeper/zookeeper-3.7.0/
在这里插入图片描述

命令为:

tar -zxvf apache-zookeeper-3.7.0.tar.gz 

解压后,我们需要添加环境变量

首先,我们需要打开配置文件:

vi /etc/profile

在里面添加:

# 需要注意的是添加的目录路径为你自己的安装目录
export ZOOKEEPER_HOME=/opt/modules/zookeeper-3.4.10
export PATH=$PATH:$ZOOKEEPER_HOME/bin

然后使用source命令使配置快速生效

source /etc/profile

集群里的每一台机器都需要这样配置。

修改配置文件。

我们的zookeeper并不是安装好了就完事了,我们还需要对zookeeper的配置文件进行修改,这样才能为我们所用。

配置zoo.cfg

我们打开zookeeper下conf文件下的zoo.cfg文件。

我们需要添加几个配置,并给zookeeper创建数据文件夹和日志文件夹。

首先,我们设置zookeeper的端口为2181。然后配置集群内三台服务器的端口号。

这是配置的具体格式
server.A=B:C:D
A 是一个数字,表示这个是第几号服务器;
B 是这个服务器的主机名(hostname)或IP;
C 表示的是这个服务器与集群中的 Leader 服务器交换信息的端口;
D 表示的是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举

clientPort=2181
server.1=centos01:2888:3888
server.2=centos02:2888:3888
server.3=centos03:2888:3888

然后给zookeeper创建数据文件夹和日志文件夹的配置。也是在zoo.cfg下面添加。

dataDir=/opt/modules/zookeeper-3.4.10/data
dataLogDir=/opt/modules/zookeeper-3.4.10/log

我们需要在zookeeper下创建data和log文件夹。

mkdir /opt/modules/zookeeper-3.4.10/data
mkdir /opt/modules/zookeeper-3.4.10/log

然后我们将上述的配置在其他服务器上也进行相关配置。

配置myid

我们需要在zookeeper下面的data文件夹下创建myid文件
然后在第一台服务器里面写1,在第二台服务器里面写2,在第三台服务器里面写3。

这样,我们的zookeeper就配置完毕了

测试zookeeper

启动zookeeper

# 在三台服务器的终端输入下面的命令启动zookeeper。
zkServer.sh start

查看启动状态

# 通过这条命令,我们就可以得知当前服务器的zookeeper运行的情况
zkServer.sh status

一定要在三台服务器都开启服务后再使用status命令,否则会报错。
在这里插入图片描述
正确的打开姿势!
在这里插入图片描述

没有报错的话,恭喜你,zookeeper就安装成功了!

Kafka的安装与配置

下载与安装及配置环境变量

http://kafka.apache.org/downloads.html

在这里插入图片描述
下载到服务器后,我们使用解压命令解压

tar -zxvf kafka_2.10-0.9.0.1.tgz

然后我们需要配置Kafka的环境变量

vi /etc/profile

在里面添加:

# 需要注意的是添加的目录路径为你自己的安装目录
export KAFKA_HOME=/opt/modules/kafka/
PATH=$KAFKA_HOME/bin:$PATH

然后使用source命令使配置快速生效

source /etc/profile

集群里的每一台机器都需要这样配置。

修改配置文件

我们需要打开Kafka下config文件夹下的server.properties文件

# 需要注意的是第一台服务的id为0,第二台为1,第三台为2.
broker.id=0
port=9092
# 这里是主机名或IP:端口号,不要写错了主机名或者IP
zookeeper.connect=centos01:2181,centos02:2181,centos03:2181

测试Kafka

我们需要分别在三台虚拟机上执行

# 这是在kafka的bin目录里面执行的。
# 如果报错没有命令的话,可以在命令前添加./或者查看环境变量是否配置正确。
kafka-server-start.sh ../config/server.properties

服务器出现这样的页面就表示开启成功。
在这里插入图片描述注意,三台服务器打开的这个终端是不能关闭的,每个服务器需要新建一个终端,才能开始测试。

例如我这里是新打开了一个终端进行测试。
在这里插入图片描述

创建topic

# 需要注意的是主机名不要写错,写你自己的
kafka-topics.sh --create --zookeeper centos01:2181,centos02:2181,centos03:2181 --replication-factor 3 --partitions 1 --topic HelloKafkaTest

如果报错为:
Replication factor: 3 larger than available brokers: 2.
可能你的一个kafka进程被关掉了一个 需要重新启动

我们可以看到已经创建成功了。
在这里插入图片描述

向topic发送数据

然后我们对这条topic发送数据

# 该命令会开启一个输入端,我们可以输入数据进行发送。
kafka-console-producer.sh --broker-list centos01:9092,centos02:9092,centos03:9092 --topic HelloKafkaTest

我们这里输入了一个hello kafka
在这里插入图片描述

接收topic的数据

# 使用这条命令会接收该topic的数据
# 并且在另一端发送的时候,这里也会显示发送的数据
kafka-console-consumer.sh --bootstrap-server centos02:9092 --from-beginning --topic HelloKafkaTest

我们可以看到之前发送的hello kafka
在这里插入图片描述
然后,我们使用之前的发送端再次发送一次数据。
在这里插入图片描述
我们可以看到接收端也同步了数据。
在这里插入图片描述

查看所有topic

kafka-topics.sh --list --zookeeper centos01:2181,centos02:2181,centos03:2181

在这里插入图片描述

查看指定topic的status

kafka-topics.sh --describe --zookeeper centos01:2181,centos02:2181,centos03:2181 --topic HelloKafka

在这里插入图片描述

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-11-19 17:41:33  更:2021-11-19 17:42:35 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 6:57:54-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码