【kafka】集群安装kafka
kafka搭建集群,相较于单节点安装,需要注意zookeeper配置文件中添加initLimit=、syncLimit=参数。否则节点无法启动
initLimit:LF初始通信时限 syncLimit:LF同步通信时限
集群一般建议三台:以下是配置文件示例:
server.properties:
# 通用配置
broker.id=1
listeners=PLAINTEXT://node1:9092
advertised.listeners=PLAINTEXT://node1:9092
log.dirs=/tmp/kafka-logs
# ZooKeeper 配置
zookeeper.connect=node1:2181,node2:2181,node3:2181
#以及其他配置参数
-
:每个节点都有唯一的
broker.id,分别设置为1、2、3。 -
listeners和advertised.listeners:这两个参数设置为节点的主机名(或者 IP 地址)和 Kafka 使用的端口(默认是9092)。确保所有节点的配置一致,但每个节点的监听地址应该与其所在节点的主机名一致。 -
log.dirs:这是 Kafka 存储日志文件的目录,可以根据需要进行修改。 -
zookeeper.connect
zookeeper.properties
# 集群中的节点ID,每个节点需要唯一
server.1=node1:2888:3888
server.2=node2:2888:3888
server.3=node3:2888:3888
# 客户端访问 ZooKeeper 时的连接端口
clientPort=2181
# 数据存储目录
dataDir=/tmp/zookeeper
# 通信时限
initLimit=5
syncLimit=2
tickTime=2000
-
:每个节点的配置,
x是节点的唯一ID。其中,node1、node2、node3是 ZooKeeper 集群中的各个节点的主机名(或者 IP 地址),2888是用于与其他 ZooKeeper 节点通信的端口,3888是用于选举 leader 的端口。确保每个节点的配置文件中的server.x参数是唯一的。 -
clientPort:客户端连接 ZooKeeper 时使用的端口。通常是2181,但您可以根据需要进行更改。 -
dataDir:ZooKeeper 存储数据的目录。确保每个节点的数据存储目录一致。 -
initLimit和syncLimit tickTime心跳间隔
参考文档:zookeeper集群 initLimit和syncLimit_zookeeper initlimit-CSDN博客