CentOS7安装部署最新kafka3.2.0集群

CentOS7安装部署最新kafka3.2.0集群,非Docker版教程

本教程主要用于CentOS7操作系统如何安装配置Kafka集群,非Docker版本教程。

一. 下载

访问官网下载页面下载

这里下载kafka_2.13-3.2.0版本

$ wget https://dlcdn.apache.org/kafka/3.2.0/kafka_2.13-3.2.0.tgz --no-check-certificate
$ tar zxf kafka_2.13-3.2.0.tgz

解压后可以看到kafka_2.13-3.2.0文件夹

二. Java环境依赖

需要有JAVA环境,可以参考《CentOS7安装部署JDK》文章说明。

PS: 需要JDK1.8环境

三. zookeeper环境依赖

需要有zookeeper环境,可以参考《CentOS7安装部署最新Zookeeper3.8.0集群》文章说明。

四. 部署

4.1 说明

部署在3台机器上面,如果没机器,1台机器也可以。

下面对三台机器进行操作,并创建日志目录

  • 机器1
$ cp -rf kafka_2.13-3.2.0 kafka_2.13-3.2.0-19091
$ mkdir ~/kafka
$ mv kafka_2.13-3.2.0-19091 ~/kafka

$ mkdir ~/kafka/logskafka
  • 机器2
$ cp -rf kafka_2.13-3.2.0 kafka_2.13-3.2.0-19092
$ mkdir ~/kafka
$ mv kafka_2.13-3.2.0-19092 ~/kafka

$ mkdir ~/kafka/logskafka
  • 机器3
$ cp -rf kafka_2.13-3.2.0 kafka_2.13-3.2.0-19093
$ mkdir ~/kafka
$ mv kafka_2.13-3.2.0-19093 ~/kafka

$ mkdir ~/kafka/logskafka

4.2 配置文件进行配置

  • 机器1进入kafka目录
$ vim config/server.properties

# 每个节点值不一样
broker.id=21
# 端口地址
port=19091
#配置当前主机hostname,也可以IP
host.name=10.10.10.11
#在配置集群的时候,必须设置
listeners = PLAINTEXT://10.10.10.11:19091

#配置对应的zookeepr地址
zookeeper.connect=10.10.10.10:15001,10.10.10.10:15002,10.10.10.10:15003

#存放log目录
log.dirs=/opt/testerzhang/kafka/logskafka
  • 机器2进入kafka目录
$ vim config/server.properties

# 每个节点值不一样
broker.id=22
# 端口地址
port=19092
#配置当前主机hostname,也可以IP
host.name=10.10.10.12
#在配置集群的时候,必须设置
listeners = PLAINTEXT://10.10.10.12:19092

#配置对应的zookeepr地址
zookeeper.connect=10.10.10.10:15001,10.10.10.10:15002,10.10.10.10:15003

#存放log目录
log.dirs=/opt/testerzhang/kafka/logskafka
  • 机器3进入kafka目录
$ vim config/server.properties

# 每个节点值不一样
broker.id=23
# 端口地址
port=19093
#配置当前主机hostname,也可以IP
host.name=10.10.10.13
#在配置集群的时候,必须设置
listeners = PLAINTEXT://10.10.10.13:19093

#配置对应的zookeepr地址
zookeeper.connect=10.10.10.10:15001,10.10.10.10:15002,10.10.10.10:15003

#存放log目录
log.dirs=/opt/testerzhang/kafka/logskafka

五.启动

  • 机器1
$ cd /opt/testerzhang/kafka/kafka_2.13-3.2.0-19091/bin
$ nohup sh ./kafka-server-start.sh ../config/server.properties &
  • 机器2
$ cd /opt/testerzhang/kafka/kafka_2.13-3.2.0-19092/bin
$ nohup sh ./kafka-server-start.sh ../config/server.properties &
  • 机器3
$ cd /opt/testerzhang/kafka/kafka_2.13-3.2.0-19093/bin
$ nohup sh ./kafka-server-start.sh ../config/server.properties &

写个杀进程脚本,仅供参考

ps -ef|grep "kafka_2.13-3.2.0-1909"|grep -v grep|awk '{print $2}'|xargs kill -9

六.验证

新版不需要zookeeper来操作,所以命令行更方便操作。

  • 创建topic(3分区,2副本)
$ cd ~/kafka/kafka_2.13-3.2.0-19091
$ bin/kafka-topics.sh --create --bootstrap-server 10.10.10.11:19091 --replication-factor 2 --partitions 3 --topic test
Created topic test.
  • 查询所有主题
$ bin/kafka-topics.sh --bootstrap-server 10.10.10.11:19091 --describe
Topic: test     TopicId: OZ_tonUcRUCpOJbjIQwaoQ PartitionCount: 3       ReplicationFactor: 2    Configs: segment.bytes=1073741824
        Topic: test     Partition: 0    Leader: 22      Replicas: 22,21 Isr: 22,21
        Topic: test     Partition: 1    Leader: 21      Replicas: 21,23 Isr: 21,23
        Topic: test     Partition: 2    Leader: 23      Replicas: 23,22 Isr: 23,22
  • 查询指定主题
$ bin/kafka-topics.sh --bootstrap-server 10.10.10.11:19091 --describe  --topic test
Topic: test     TopicId: OZ_tonUcRUCpOJbjIQwaoQ PartitionCount: 3       ReplicationFactor: 2    Configs: segment.bytes=1073741824
        Topic: test     Partition: 0    Leader: 22      Replicas: 22,21 Isr: 22,21
        Topic: test     Partition: 1    Leader: 21      Replicas: 21,23 Isr: 21,23
        Topic: test     Partition: 2    Leader: 23      Replicas: 23,22 Isr: 23,22
  • 生产消息
$ bin/kafka-console-producer.sh --bootstrap-server 10.10.10.11:19091 --topic test
>hello world
>testerzhang
  • 消费消息(包括历史消息)
$ bin/kafka-console-consumer.sh --bootstrap-server 172.17.102.31:19091 --topic test --from-beginning
testerzhang
hello world
  • 消费消息(不包括历史消息)
$ bin/kafka-console-consumer.sh --bootstrap-server 172.17.102.31:19091 --topic test
newmsg1
newmsg2
  • 修改分区数(分区数改为4)
$ bin/kafka-topics.sh --bootstrap-server 172.17.102.31:19091 --alter --topic test --partitions 4
  • 删除topic
$ bin/kafka-topics.sh --bootstrap-server 172.17.102.31:19091 --delete --topic test

本文没有授权给任何组织、企业和个人转载,未经作者允许禁止转载!

欢迎关注我的公众号testerzhang,原创技术文章第一时间推送。

公众号二维码

updatedupdated2024-01-252024-01-25