Kafka集群的安装

95 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第18天,点击查看活动详情

Kafka集群的安装

登录Kafka的官网kafka.apache.org/

Kafka是Java和Scala语言开发的。所以安装Kafka之前必须要保证先安装JDK。

Kafka依赖于Zookeeper的选举机制,所以安装Kafka之前还要保证Zookeeper已经被安装好了。

 

下载安装包:

注意选择kafka的版本,以及scala的版本。

image.png

 

上传安装包到集群中,并解压。

利用已有的3台机器:node01、node02、node03

修改配置:

cd config

vi server.properties

0: node01

1: node02

2: node03

| broker.id=0    从0 开始 ,0  1  2delete.topic.enable=true   
//这条在文件中没有,手动添加,默认主题不允许删除
listeners=PLAINTEXT:
//node01:9092log.dirs=/root/kafkadata    
// 数据存放的目录,会自动生成,不需要创建num.partitions=3zookeeper.connect=node01:2181,node02:2181,node03:2181

 

 

分发kafka的安装包,到其他的节点中:

scp -r kafka_2.12-2.8.0 node02:$PWD
scp -r kafka_2.12-2.8.0 node03:$PWD

 

在其他的节点上,修改broker.id 和 listeners中的主机名。

启动kafka集群

启动脚本和停止脚本命令。

kafka-server-start.sh

kafka-server-stop.sh

 

以后台守护进程启动:

kafka-server-start.sh -daemon /opt/software/kafka/config/server.properties

注意: 在启动kafka之前,必须先启动zookeeper。

为了使用方便,可以配置环境变量。

Kafka常用的配置解释

#broker 的全局唯一编号,不能重复

broker.id=0

#删除 topic 功能使能

delete.topic.enable=true

#处理网络请求的线程数量

num.network.threads=3

#用来处理磁盘 IO 的线程数量

num.io.threads=8

#发送套接字的缓冲区大小

socket.send.buffer.bytes=102400

#接收套接字的缓冲区大小

socket.receive.buffer.bytes=102400

#请求套接字的缓冲区大小

socket.request.max.bytes=104857600

#kafka 运行日志存放的路径

log.dirs=/root/kafkadata

#topic 在当前 broker 上的分区个数

num.partitions=3

#用来恢复和清理 data 下数据的线程数量

num.recovery.threads.per.data.dir=1

# segment 文件保留的最长时间,超时将被删除

log.retention.hours=168

#配置连接 Zookeeper 集群地址

zookeeper.connect=node01:2181,node02:2181,node03:2181