搭建Kafka集群在Linux上的步骤如下:
环境准备
- 安装Java:
-
对于Ubuntu/Debian系统:
sudo apt update sudo apt install openjdk-8-jdk
-
对于CentOS/RedHat系统:
sudo yum install java-1.8.0-openjdk-devel
-
验证安装:
java -version
- 安装Zookeeper:
-
下载Zookeeper安装包并解压。
-
编辑Zookeeper配置文件
zoo.cfg
,配置Zookeeper节点信息。 -
在每个Zookeeper节点上启动Zookeeper服务。
- 下载并解压Kafka:
-
从Apache Kafka官网下载最新版本的Kafka。
-
解压Kafka安装包到指定目录。
配置Kafka集群
- 配置Zookeeper:
-
编辑Zookeeper配置文件
zoo.cfg
,配置Zookeeper集群信息。server.1: 2181:3888 server.2: 2181:3888 server.3: 2181:3888 dataDir: /var/lib/zookeeper dataLogDir: /var/log/zookeeper
-
在每个Zookeeper节点上启动Zookeeper服务。
- 配置Kafka:
-
编辑Kafka配置文件
server.properties
,配置每个Kafka节点的信息。broker.id=1 # 每个节点的broker.id必须是唯一的 listeners=PLAINTEXT://your_server_ip:9092 zookeeper.connect=zk1:2181,zk2:2181,zk3:2181 log.dirs=/var/lib/kafka-logs num.network.threads=3 num.io.threads=8 socket.send.buffer.bytes=102400 socket.receive.buffer.bytes=102400 socket.request.max.bytes=104857600 log.retention.hours=168 log.segment.bytes=1073741824 log.retention.check.interval.ms=300000
-
在每个Kafka节点上启动Kafka服务。
验证集群状态
使用以下命令检查Kafka集群状态:
jps
你应该能看到Kafka相关的进程,如QuorumPeerMain
和Kafka
。
创建Topic
使用以下命令创建一个Topic:
./bin/kafka-topics.sh --create --zookeeper zk1:2181,zk2:2181,zk3:2181 --replication-factor 3 --partitions 3 --topic test
发送和消费消息
使用以下命令发送消息:
./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
使用以下命令消费消息:
./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
请注意,以上步骤以Kafka 3.5.2版本为例,具体版本可能会有所不同。在安装前,请确保已经安装并配置好Zookeeper,因为Kafka需要Zookeeper来管理集群元数据。