单台linux服务器安装kafka集群
时间: 2025-06-18 17:55:48 浏览: 22
### 单台 Linux 服务器上安装 Kafka 集群的指南
在单台 Linux 服务器上安装 Kafka 集群虽然与多台服务器集群有所不同,但其核心原理一致。以下内容将详细介绍如何在单台 Linux 服务器上搭建 Kafka 集群,并结合提供的引用信息进行说明。
#### 1. 安装 Zookeeper
Kafka 的运行依赖于 Zookeeper,因此首先需要确保 Zookeeper 成功运行。Zookeeper 是一个分布式协调服务,用于管理 Kafka 集群中的元数据[^1]。
- 下载并解压 Zookeeper:
```bash
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz
tar -xzf apache-zookeeper-3.7.0-bin.tar.gz
```
- 配置 `zoo.cfg` 文件:
```bash
cd apache-zookeeper-3.7.0-bin/conf/
cp zoo_sample.cfg zoo.cfg
```
编辑 `zoo.cfg` 文件,添加以下内容(根据实际情况修改):
```properties
tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181
initLimit=5
syncLimit=2
server.1=localhost:2888:3888
```
- 启动 Zookeeper 服务:
```bash
cd ../bin/
./zkServer.sh start
```
#### 2. 安装 Kafka
接下来安装 Kafka 并配置多个 broker 实例以模拟集群环境。
- 下载并解压 Kafka:
```bash
wget https://downloads.apache.org/kafka/3.0.0/kafka_2.13-3.0.0.tgz
tar -xzf kafka_2.13-3.0.0.tgz
cd kafka_2.13-3.0.0/
```
- 创建多个 `server.properties` 文件以配置不同的 broker 实例。例如,创建 `server-1.properties` 和 `server-2.properties`:
**server-1.properties**:
```properties
broker.id=1
listeners=PLAINTEXT://localhost:9092
log.dirs=/tmp/kafka-logs-1
zookeeper.connect=localhost:2181/kafka
```
**server-2.properties**:
```properties
broker.id=2
listeners=PLAINTEXT://localhost:9093
log.dirs=/tmp/kafka-logs-2
zookeeper.connect=localhost:2181/kafka
```
注意:`zookeeper.connect` 的路径中 `/kafka` 是必须的,否则会导致安装失败[^3]。
- 启动 Kafka broker 实例:
```bash
# 启动第一个 broker
bin/kafka-server-start.sh config/server-1.properties &
# 启动第二个 broker
bin/kafka-server-start.sh config/server-2.properties &
```
#### 3. 测试 Kafka 集群
为了验证 Kafka 集群是否正常工作,可以创建一个主题并发送/接收消息。
- 创建主题:
```bash
bin/kafka-topics.sh --create --topic test_topic --bootstrap-server localhost:9092 --replication-factor 2 --partitions 3
```
- 发送消息:
```bash
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test_topic
```
- 接收消息:
```bash
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test_topic --from-beginning
```
如果消息能够成功发送和接收,则表明 Kafka 集群已正确配置[^4]。
---
阅读全文
相关推荐
















