栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Kafka 集群搭建

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Kafka 集群搭建

前言 环境介绍

虚拟机软件:VirtualBox

Linux 发行版本:Ubuntu 20.04.4

虚拟机核心数:1 core

虚拟机内存:2 GB

JDK 版本:1.8.0_202

ZK 版本:3.8.0

Kafka 版本:3.2.0

实验机搭建

集群规划
node01node02node03
zkzkzk
kafkakafkakafka
ZK 集群部署 ZK 环境变量
$ vim /etc/profile
# 拷贝以下内容
export ZK_HOME=/opt/zookeeper-3.8.0
export PATH=$PATH:$JAVA_HOME/bin:$ZK_HOME/bin

$ xsync $ZK_HOME
$ xsync /etc/profile
修改 zoo.cfg
$ cd $ZK_HOME
$ mkdir zkData
$ cd conf
$ mv zoo_sample.cfg zoo.cfg
$ vim zoo.cfg

dataDir=/opt/zookeeper-3.8.0/zkData
server.1=node01:2888:3888
server.2=node02:2888:3888
server.3=node03:2888:3888

$ xsync /opt/zookeeper-3.8.0/conf/zoo.cfg

配置 myid:填写上面 server.x 中对应的数字 x,如:1、2、3。每个机子都不一样

$ vim /opt/zookeeper-3.8.0/zkData/myid
ZK 集群启动
# 启动
$ xcall zkServer.sh start
# 关闭
$ xcall zkServer.sh stop
# 状态
$ xcall zkServer.sh status
Kafka 集群部署 Kafka 环境变量
$ vim /etc/profile
# 拷贝以下内容
export KAFKA_HOME=/opt/kafka-3.2.0
export PATH=$PATH:$JAVA_HOME/bin:$ZK_HOME/bin:$KAFKA_HOME/bin

$ xsync $KAFKA_HOME
$ xsync /etc/profile
配置 server.properties
$ vim $KAFKA_HOME/config/server.properties
############################# Server Basics #############################
# broker 全局唯一编号,不能重复
broker.id=0

############################# Socket Server Settings #############################
# 网络请求线程数量
num.network.threads=3

# IO 线程数量
num.io.threads=8

# 发送套接字缓冲区大小
socket.send.buffer.bytes=102400

# 接受套接字缓冲区大小
socket.receive.buffer.bytes=102400

# 请求套接字缓冲区大小
socket.request.max.bytes=104857600


############################# Log Basics #############################
# kafka 日志路径
log.dirs=/tmp/kafka-logs

# 该 broker 上分区数量
num.partitions=1

# 恢复和清理 data 下数据的线程数量
num.recovery.threads.per.data.dir=1

############################# Internal Topic Settings  #############################
# topic 副本个数
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1

############################# Log Retention Policy #############################
# 文件保留最长时间
log.retention.hours=168

# 单文件大小上限
log.segment.bytes=1073741824

# 检查过期数据间隔
log.retention.check.interval.ms=300000

############################# Zookeeper #############################

# 配置 zk,及元数据存储位置
zookeeper.connect=node01:2181,node02:2181,node03:2181/kafka

# 连接 ZK 超时时间
zookeeper.connection.timeout.ms=18000


############################# Group Coordinator Settings #############################
group.initial.rebalance.delay.ms=0
$ xsync $KAFKA_HOME/config/server.properties

注意:每个机子上的,broker.id 要不一样,node01 ~ node03 依次为 1、2、3

Kafka 集群启动
# 启动
$ xcall kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties
# 关闭
$ xcall kafka-server-stop.sh

注意:停止 Kafka 集群时,一定要等 Kafka 所有节点进程全部停止后再停止 Zookeeper 集群。因为 Zookeeper 集群当中记录着 Kafka 集群相关信息,Zookeeper 集群一旦先停止,Kafka 集群就没有办法再获取停止进程的信息,只能手动杀死 Kafka 进程了。

检验
$ xcall jps # 出现以下结果,说明 zk 和 kafka 集群部署且启动成功
---------------- node01 ----------------
8629 Jps
7990 QuorumPeerMain
8457 Kafka
---------------- node02 ----------------
8352 Kafka
8515 Jps
7885 QuorumPeerMain
---------------- node03 ----------------
7686 Kafka
7224 QuorumPeerMain
7851 Jps
--------------- complete ---------------
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/919944.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号