Kafka2.2.0集群安装

Kafka2.2.0 三节点集群搭建

Kafka2.2.0 基于zookeeper搭建,这里也搭建一个三个节点的集群。(在一个节点模拟三节点,真实的三节点把ip替换一下即可,按照hadoop案件把网络打通即可)

1、下载解压

Kafka 安装包官方下载地址 ,本用例下载的版本为 2.2.0 ,下

载命令:

bash 复制代码
# 下载

wget https://www-eu.apache.org/dist/kafka/2.2.0/kafka_2.12-2.2.0.tgz

#cp到指定目录
cp kafka_2.12-2.2.0.tgz /usr/app/
# 解压

tar -xzf kafka_2.12-2.2.0.tgz

2 拷贝配置文件

进入解压目录的 config 目录下 ,拷贝三份配置文件:

bash 复制代码
 cp server.properties server-1.properties
 cp server.properties server-2.properties
 cp server.properties server-3.properties

3 修改配置

分别修改三份配置文件中的部分配置,如下:

只修改下面的属性,其他的属性不需要动

server-1.properties

bash 复制代码
# The id of the broker. 集群中每个节点的唯一标识

broker.id=0

# 监听地址,hadoop101是本机域名

listeners=PLAINTEXT://hadoop101:9092

# 数据的存储位置

log.dirs=/usr/local/kafka-logs/00

# Zookeeper连接地址(如果Zookeeper和kafka都在一个节点上,节点对应域名就是hadoop101节点)

zookeeper.connect=hadoop101:2181,hadoop101:2182,hadoop101:2183

server-2.properties

bash 复制代码
broker.id=1

listeners=PLAINTEXT://hadoop101:9093

log.dirs=/usr/local/kafka-logs/01

zookeeper.connect=hadoop101:2181,hadoop101:2182,hadoop101:2183

server-3.properties

bash 复制代码
broker.id=2

listeners=PLAINTEXT://hadoop101:9094

log.dirs=/usr/local/kafka-logs/02

zookeeper.connect=hadoop101:2181,hadoop101:2182,hadoop101:2183

这里需要说明的是 log.dirs 指的是数据日志的存储位置 ,确切的说,就是分区数据的存储位置。程序运行日志的位置是通过同一目录下的 log4j.properties 进行配置的。

4 启动集群

分别指定不同配置文件,启动三个 Kafka 节点。启动后可以使用 jps 查看进程,此时应该有三个

zookeeper 进程和三个 kafka 进程。

bash 复制代码
#在kafka目录下运行, & 后台运行
bin/kafka-server-start.sh config/server-1.properties &
bin/kafka-server-start.sh config/server-2.properties &
bin/kafka-server-start.sh config/server-3.properties &

停止kafka

bash 复制代码
bin/kafka-server-stop.sh

5 创建测试主题

创建测试topic,一个分区 三个副本

bash 复制代码
bin/kafka-topics.sh --create --bootstrap-server hadoop101:9092 \
 --replication-factor 3 \
 --partitions 1 --topic my-test-topic

创建后可以使用以下命令查看创建的主题信息:

bash 复制代码
bin/kafka-topics.sh --describe --bootstrap-server hadoop101:9092 --topic my-test-topic

可以看到分区 0 的有 0,1,2 三个副本,且三个副本都是可用副本,都在 ISR(in-sync Replica 同步副本)

列表中,其中 0 为首领副本,此时代表集群已经搭建成功。

相关推荐
Wo3Shi4七1 小时前
消息不丢失:生产者收到写入成功响应后消息一定不会丢失吗?
后端·kafka·消息队列
Wo3Shi4七5 小时前
消息积压:业务突然增长,导致消息消费不过来怎么办?
后端·kafka·消息队列
小马哥编程13 小时前
【ISAQB大纲解读】Kafka消息总线被视为“自下而上设计”?
分布式·kafka·系统架构·linq
shangjg314 小时前
Kafka 的 ISR 机制深度解析:保障数据可靠性的核心防线
java·后端·kafka
大数据0015 小时前
Docker慢慢学
mysql·docker·kafka·n8n
帅气的小峰17 小时前
1-【源码剖析】kafka核心概念
分布式·kafka
昭阳~19 小时前
Kafka深度技术解析:架构、原理与最佳实践
分布式·架构·kafka
ikun·20 小时前
Kafka 消息队列
分布式·kafka
Wo3Shi4七1 天前
怎么在Kafka上支持延迟消息?
后端·kafka·消息队列
后端码匠1 天前
Kafka 单机部署启动教程(适用于 Spark + Hadoop 环境)
hadoop·spark·kafka