【详解】安装单节点并配置启动Kafka

举报
皮牙子抓饭 发表于 2025/04/22 17:13:44 2025/04/22
【摘要】 安装单节点并配置启动KafkaApache Kafka 是一个分布式流处理平台,用于构建实时数据管道和流应用。它能够处理大量数据,并且具有高吞吐量、低延迟的特点。本文将详细介绍如何在单节点上安装、配置并启动 Apache Kafka。环境准备系统要求操作系统:Linux(本教程以 Ubuntu 20.04 为例)Java 环境:JDK 1.8 或更高版本安装 Java首先,确保你的系统中已经...

安装单节点并配置启动Kafka

Apache Kafka 是一个分布式流处理平台,用于构建实时数据管道和流应用。它能够处理大量数据,并且具有高吞吐量、低延迟的特点。本文将详细介绍如何在单节点上安装、配置并启动 Apache Kafka。

环境准备

系统要求

  • 操作系统:Linux(本教程以 Ubuntu 20.04 为例)
  • Java 环境:JDK 1.8 或更高版本

安装 Java

首先,确保你的系统中已经安装了 Java。可以通过以下命令检查 Java 版本:

java -version

如果未安装 Java,可以使用以下命令进行安装:

sudo apt update
sudo apt install openjdk-11-jdk

安装完成后,再次检查 Java 版本:

java -version

下载并解压 Kafka

  1. 访问 Apache Kafka 官方网站,下载最新版本的 Kafka。例如,下载 3.0.0 版本:
wget https://downloads.apache.org/kafka/3.0.0/kafka_2.13-3.0.0.tgz
  1. 解压下载的文件:
tar -xzf kafka_2.13-3.0.0.tgz
cd kafka_2.13-3.0.0

配置 Kafka

Kafka 的配置文件位于 ​​config​​ 目录下,主要包括以下几个文件:

  • ​server.properties​​:Kafka 服务器的主要配置文件。
  • ​zookeeper.properties​​:ZooKeeper 的配置文件。

修改 ​​server.properties​

  1. 打开 server.properties 文件:
nano config/server.properties
  1. 修改以下配置项:
  • ​broker.id​​:设置 Broker 的唯一标识,默认为 0。
  • ​listeners​​:设置监听地址,例如 ​​PLAINTEXT://:9092​​。
  • ​log.dirs​​:设置日志存储目录,例如 ​​/tmp/kafka-logs​​。
  • ​zookeeper.connect​​:设置 ZooKeeper 连接字符串,例如 ​​localhost:2181​​。

示例配置:

broker.id=0
listeners=PLAINTEXT://:9092
log.dirs=/tmp/kafka-logs
zookeeper.connect=localhost:2181

启动 ZooKeeper

Kafka 依赖于 ZooKeeper 来管理集群状态。首先启动 ZooKeeper:

bin/zookeeper-server-start.sh config/zookeeper.properties

打开一个新的终端窗口,继续下一步操作。

启动 Kafka

在新的终端窗口中,启动 Kafka 服务器:

bin/kafka-server-start.sh config/server.properties

测试 Kafka

为了验证 Kafka 是否正常工作,我们可以创建一个主题并发送和接收消息。

创建主题

  1. 打开一个新的终端窗口。
  2. 使用以下命令创建一个名为 ​​test​​ 的主题:
bin/kafka-topics.sh --create --topic test --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1

发送消息

  1. 打开一个新的终端窗口。
  2. 使用以下命令启动生产者:
bin/kafka-console-producer.sh --topic test --bootstrap-server localhost:9092
  1. 在生产者控制台中输入一些消息,按回车键发送。

接收消息

  1. 打开一个新的终端窗口。
  2. 使用以下命令启动消费者:
bin/kafka-console-consumer.sh --topic test --from-beginning --bootstrap-server localhost:9092
  1. 消费者将显示生产者发送的消息。

停止 Kafka 和 ZooKeeper

当不再需要运行 Kafka 和 ZooKeeper 时,可以使用以下命令停止它们:

停止 Kafka

bin/kafka-server-stop.sh

停止 ZooKeeper

bin/zookeeper-server-stop.sh


接下来,你可以根据实际需求进一步探索 Kafka 的高级功能和配置选项。下面是一个详细的步骤指南,包括如何在单节点上安装、配置和启动 Apache Kafka。我们将使用 Ubuntu 20.04 作为操作系统,并通过命令行进行操作。

前提条件

  1. 安装 Java:Kafka 需要 Java 环境。
  2. 下载 Kafka:从 Apache Kafka 官方网站下载 Kafka 的二进制包。
  3. 配置 Kafka:编辑 Kafka 的配置文件以适应你的环境。
  4. 启动 Kafka:启动 Zookeeper 和 Kafka 服务。

步骤 1: 安装 Java

首先,确保你的系统上已经安装了 Java。你可以使用以下命令来安装 OpenJDK:

sudo apt update
sudo apt install openjdk-11-jdk -y

验证 Java 安装:

java -version

步骤 2: 下载 Kafka

从 Apache Kafka 官方网站下载最新版本的 Kafka。这里我们使用 Kafka 3.0.0 作为示例:

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

步骤 3: 配置 Kafka

Kafka 配置文件位于 ​​config​​​ 目录下。我们需要编辑两个主要的配置文件:​​server.properties​​​ 和 ​​zookeeper.properties​​。

编辑 ​​zookeeper.properties​

默认情况下,Zookeeper 配置文件已经足够简单,不需要修改。如果你需要自定义配置,可以编辑 ​​config/zookeeper.properties​​。

编辑 ​​server.properties​

编辑 ​​config/server.properties​​ 文件,进行以下配置:

# 配置 Kafka 的 broker id
broker.id=0

# 配置 Kafka 的监听地址
listeners=PLAINTEXT://:9092

# 配置日志目录
log.dirs=/tmp/kafka-logs

# 配置 Zookeeper 地址
zookeeper.connect=localhost:2181

# 其他可选配置
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

步骤 4: 启动 Zookeeper 和 Kafka

首先启动 Zookeeper,然后启动 Kafka。

启动 Zookeeper
bin/zookeeper-server-start.sh config/zookeeper.properties

打开一个新的终端窗口,然后启动 Kafka:

启动 Kafka
bin/kafka-server-start.sh config/server.properties

步骤 5: 创建和测试主题

创建一个测试主题并发送和接收消息。

创建主题
bin/kafka-topics.sh --create --topic test-topic --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1
发送消息

打开一个新的终端窗口,运行以下命令来发送消息:

bin/kafka-console-producer.sh --topic test-topic --bootstrap-server localhost:9092

输入一些消息,例如:

Hello, Kafka!
This is a test message.
接收消息

在另一个终端窗口中,运行以下命令来接收消息:

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

你应该能够看到之前发送的消息。


通过这些步骤,你可以在本地环境中快速搭建一个简单的 Kafka 环境,用于开发和测试。如果你需要更复杂的配置或集群部署,可以参考 Kafka 的官方文档进行进一步的学习和配置。Apache Kafka 是一个分布式流处理平台,广泛用于构建实时数据管道和流应用。下面我将详细介绍如何在单节点上安装、配置并启动 Kafka。

1. 安装 Java

Kafka 是用 Java 编写的,因此首先需要在你的系统上安装 Java。你可以使用以下命令来安装 OpenJDK:

sudo apt update
sudo apt install openjdk-11-jdk

验证 Java 安装:

java -version

2. 下载 Kafka

你可以从 Apache Kafka 的官方网站下载最新版本的 Kafka。这里以 Kafka 3.0.0 为例:

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

3. 配置 Kafka

Kafka 的配置文件位于 ​​config​​ 目录下。你需要编辑以下几个主要的配置文件:

3.1 配置 ZooKeeper

Kafka 使用 ZooKeeper 来管理集群元数据。首先,我们需要启动 ZooKeeper。默认情况下,ZooKeeper 的配置文件是 ​​config/zookeeper.properties​​。你可以保持默认配置,或者根据需要进行修改。

3.2 配置 Kafka Broker

Kafka Broker 的配置文件是 ​​config/server.properties​​。打开该文件并进行以下配置:

# broker.id 是每个 Kafka 节点的唯一标识符
broker.id=0

# 指定监听的端口
listeners=PLAINTEXT://:9092

# 日志文件的存储路径
log.dirs=/tmp/kafka-logs

# ZooKeeper 连接字符串
zookeeper.connect=localhost:2181

# 其他可选配置
# num.network.threads=3
# num.io.threads=8
# socket.send.buffer.bytes=102400
# socket.receive.buffer.bytes=102400
# socket.request.max.bytes=104857600

4. 启动 ZooKeeper

在 Kafka 目录下,使用以下命令启动 ZooKeeper:

bin/zookeeper-server-start.sh config/zookeeper.properties

5. 启动 Kafka Broker

在另一个终端窗口中,使用以下命令启动 Kafka Broker:

bin/kafka-server-start.sh config/server.properties

6. 创建主题

Kafka 中的数据是以主题(Topic)的形式组织的。你可以使用以下命令创建一个主题:

bin/kafka-topics.sh --create --topic my-topic --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1

7. 生产消息

你可以使用 Kafka 提供的命令行工具来生产消息:

bin/kafka-console-producer.sh --topic my-topic --bootstrap-server localhost:9092

在打开的控制台中输入消息,例如:

Hello, Kafka!

8. 消费消息

你也可以使用 Kafka 提供的命令行工具来消费消息:

bin/kafka-console-consumer.sh --topic my-topic --from-beginning --bootstrap-server localhost:9092

这将显示所有已发送到 ​​my-topic​​ 的消息。

9. 停止 Kafka 和 ZooKeeper

要停止 Kafka Broker 和 ZooKeeper,可以使用以下命令:

# 停止 Kafka Broker
bin/kafka-server-stop.sh

# 停止 ZooKeeper
bin/zookeeper-server-stop.sh

总结

以上步骤详细介绍了如何在单节点上安装、配置并启动 Kafka。通过这些步骤,你应该能够成功运行一个简单的 Kafka 环境,并进行基本的消息生产和消费操作。如果你有任何问题或需要进一步的帮助,请随时提问!

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。