专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

CentOS安装Kafka集群

***关于Kafka(单机版)的下载、安装、配置、启动、测试等,请参考另一篇文章:***CentOS安装Kafka

搭建集群只需在此基础上增加一些配置,本文也主要介绍这些和集群相关的配置,其他步骤不再赘述

假设节点数为3,ip分别为:10.20.1.52,10.20.1.53,10.20.1.54

一、配置

1、先安装并配置其中一台机器(10.20.1.52)
修改server.properties
shell> cd /usr/local/kafka_2.12-2.2.0/
shell> vim config/server.properties

编辑以下内容

############################# Server Basics #############################

# 3个节点此处分别设置为:broker.id=1,broker.id=2,broker.id=3
broker.id=1

############################# Socket Server Settings #############################

# 3个节点此处分别设置为:PLAINTEXT://10.20.1.52:9092,PLAINTEXT://10.20.1.53:9092,PLAINTEXT://10.20.1.54:9092
listeners=PLAINTEXT://10.20.1.52:9092
# 3个节点此处分别设置为:PLAINTEXT://10.20.1.52:9092,PLAINTEXT://10.20.1.53:9092,PLAINTEXT://10.20.1.54:9092
advertised.listeners=PLAINTEXT://10.20.1.52:9092

############################# Log Basics #############################

# 默认为/tmp/kafka-logs,可能会被删掉
log.dirs=/usr/local/kafka_2.12-2.2.0/logs

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

# 末尾的/kafka可选,但是建议配置上,因为注册到ZooKeeper的除了kafka可能还有其他服务,增加根目录便于区分
zookeeper.connect=10.20.1.52:2181,10.20.1.53:2181,10.20.1.54:2181/kafka

2、复制到其他节点(10.20.1.53,10.20.1.54)

第一台机器配置好以后,直接复制到其他节点然后稍加修改即可(当然,如果你愿意,也可以按照相同的步骤再重复安装配置一次,注意修改server.properties的内容即可)

shell> scp -r /usr/local/kafka_2.12-2.2.0/ root@10.20.1.53:/usr/local/
shell> scp -r /usr/local/kafka_2.12-2.2.0/ root@10.20.1.54:/usr/local/

然后分别修改其他两台机器上的配置文件(server.properties)

shell> cd /usr/local/kafka_2.12-2.2.0/
shell> vim config/server.properties

# 10.20.1.53
broker.id=2
listeners=PLAINTEXT://10.20.1.53:9092
advertised.listeners=PLAINTEXT://10.20.1.53:9092

# 10.20.1.54
broker.id=3
listeners=PLAINTEXT://10.20.1.54:9092
advertised.listeners=PLAINTEXT://10.20.1.54:9092

二、启动

分别启动3个Kafka节点

shell> cd /usr/local/kafka_2.12-2.2.0
shell> bin/kafka-server-start.sh -daemon config/server.properties

如果使用kafka-manager,需要开启JMX_PORT

shell> JMX_PORT=9999 bin/kafka-server-start.sh -daemon config/server.properties

三、测试

1、查看ZooKeeper注册信息
shell> cd /usr/local/zookeeper-3.5.3-beta/
shell> bin/zkCli.sh
[zk: localhost:2181(CONNECTED) 0] ls /
[kafka, test, zookeeper]
[zk: localhost:2181(CONNECTED) 1] ls /kafka
[admin, brokers, cluster, config, consumers, controller, controller_epoch, isr_change_notification, latest_producer_id_block, log_dir_event_notification]
[zk: localhost:2181(CONNECTED) 2] ls /kafka/brokers
[ids, seqid, topics]
[zk: localhost:2181(CONNECTED) 3] ls /kafka/brokers/ids
[1, 2, 3]

其中,1,2,3即为3台kafka节点server.properties中配置的broker.id的值

2、kafka命令

第一台机器(10.20.1.52)创建topic

shell> bin/kafka-topics.sh --create --bootstrap-server 10.20.1.52:9092 --replication-factor 3 --partitions 1 --topic test

# 查看集群的topic详情,也可以分别连接另外两台机器查看topic是否已同步
shell> bin/kafka-topics.sh --describe --bootstrap-server 10.20.1.52:9092 --topic test 
Topic:test      PartitionCount:1        ReplicationFactor:3     Configs:segment.bytes=1073741824
        Topic: test     Partition: 0    Leader: 1       Replicas: 1,2,3 Isr: 1,2,3

第二台机器(10.20.1.53)发送消息

bin/kafka-console-producer.sh --broker-list 10.20.1.53:9092 --topic test
>Hello
>World

第三台机器(10.20.1.54)消费消息

bin/kafka-console-consumer.sh --bootstrap-server 10.20.1.54:9092 --topic test --from-beginning
Hello
World

文章永久链接:https://tech.souyunku.com/40323

未经允许不得转载:搜云库技术团队 » CentOS安装Kafka集群

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们