linux环境 kafka3.4.0 刚搭建好(用kraft替代zookeeper) 怎么建个topic测试一下消费有没有成功

news/2024/12/28 11:18:45/文章来源:https://www.cnblogs.com/chenglogs/p/18247188

 

 

 

 

在使用 Kafka 3.4.0 并且用 Kraft (Kafka Raft) 替代 Zookeeper 的情况下,步骤会有一些变化。这是因为 Kraft 模式下 Kafka 自身管理元数据,而不再依赖 Zookeeper。

以下是使用 Kraft 模式的 Kafka 3.4.0 创建 topic 并进行生产和消费测试的具体步骤:

### 1. **启动 Kafka 集群**

确保你的 Kafka 集群已经正确配置并启动。在 Kraft 模式下,你需要启动控制器节点和代理节点。

启动控制器节点:
```sh
bin/kafka-storage.sh format -t <uuid> -c config/kraft-controller.properties
bin/kafka-server-start.sh config/kraft-controller.properties
```

启动代理节点:
```sh
bin/kafka-storage.sh format -t <uuid> -c config/kraft-broker.properties
bin/kafka-server-start.sh config/kraft-broker.properties
```

注意:`<uuid>` 是你生成的一个唯一标识符,可以使用 `uuidgen` 工具生成,例如 `uuidgen`。

### 2. **创建一个 Topic**

使用 `kafka-topics.sh` 脚本来创建一个新的 topic。例如,创建一个名为 `test-topic` 的 topic:
```sh
bin/kafka-topics.sh --create --topic test-topic --bootstrap-server localhost:9092 --partitions 1 --replication-factor 1
```

你可以用以下命令查看你创建的 topic 是否存在:
```sh
bin/kafka-topics.sh --list --bootstrap-server localhost:9092
```

### 3. **启动生产者**

使用 `kafka-console-producer.sh` 启动一个命令行生产者来向 `test-topic` 发送消息:
```sh
bin/kafka-console-producer.sh --topic test-topic --bootstrap-server localhost:9092
```

输入一些消息,例如:
```sh
Hello, Kafka!
This is a test message.
```

### 4. **启动消费者**

使用 `kafka-console-consumer.sh` 启动一个命令行消费者来从 `test-topic` 消费消息:
```sh
bin/kafka-console-consumer.sh --topic test-topic --from-beginning --bootstrap-server localhost:9092
```

这样你应该就能看到之前生产的消息被消费者接收到并打印在控制台上。

### 注意事项

1. **配置文件**:确保你的控制器和代理配置文件 (`kraft-controller.properties` 和 `kraft-broker.properties`) 已正确配置,并包含必要的配置项,如 `process.roles=controller,broker`、`controller.quorum.voters` 等。

2. **环境变量**:确保你的环境变量 `KAFKA_HOME` 已正确设置,并且 Kafka 的 `bin` 目录已添加到 `PATH` 中。如果没有,可以通过以下命令临时设置:
   ```sh
   export KAFKA_HOME=/path/to/kafka
   export PATH=$PATH:$KAFKA_HOME/bin
   ```

3. **工具版本**:确保使用与 Kafka 版本一致的命令行工具(例如 `kafka-topics.sh`, `kafka-console-producer.sh`, `kafka-console-consumer.sh`)。

通过以上步骤,你应该能够在 Kraft 模式下成功地创建一个 Kafka topic,并测试生产者和消费者的功能。如果遇到任何问题,请检查 Kafka 的日志文件以获取更多信息。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/724644.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何确保数据跨域交换安全、合规、可追溯性?

数据跨域交换是指在不同的组织、系统或网络之间进行数据的传输和共享。随着数字经济的发展,数据跨域交换在促进数据流通和创新融合方面发挥着重要作用。然而,这一过程也面临着诸多挑战和风险,例如数据安全、合规性、完整性以及责任不清晰等问题。在进行不同地域文件传输时,…

如何解决跨境传输常见的安全及效率问题?

在当今全球化的商业版图中,企业为了拓展国际市场和增强竞争力,跨境传输数据已成为一项不可或缺的业务活动。合格的数据跨境传输方案,应考虑以下要素:法律合规性:确保方案符合所有相关国家的数据保护法律和国际法规,包括但不限于欧盟的GDPR、中国的《数据安全法》和《个人…

如何保障生物制药企业,HPC环境下数据下载的安全性问题?

许多不同类型的公司和组织可能会使用高性能计算(HPC)来解决各种复杂的问题。制药和生物技术企业使用高性能计算(HPC)的方式多种多样,同时也涉及HPC环境下数据下载安全性问题的考量。主要包括以下几个方面:药物设计与发现:HPC可以用于复杂的分子动力学模拟和药物分子的筛…

TiKV 源码分析之 PointGet

本文介绍了TiDB中最基本的PointGet算子在存储层TiKV中的执行流程。作者:来自 vivo 互联网存储研发团队-Guo Xiang本文介绍了TiDB中最基本的PointGet算子在存储层TiKV中的执行流程。 一、背景介绍 TiDB是一款具有HTAP能力(同时支持在线事务处理与在线分析处理 )的融合型分布式数…

大数据同步方案怎么选,才能提高企业的业务效率?

大数据同步通常指的是在多个数据源或存储系统之间同步数据的过程,可以确保数据的一致性,提高数据的可用性和可靠性,同时支持数据分析和决策制定。大数据同步的步骤通常包括: 数据识别:确定需要同步的数据类型和范围; 数据抽取:从源系统中提取数据; 数据转换:将数据转换…

有点东西,template可以直接使用setup语法糖中的变量原来是因为这个

你知道为什么setup语法糖中的顶层绑定可以在template中直接使用的呢?setup语法糖是如何编译成setup函数的呢?前言 我们每天写vue3代码的时候都会使用到setup语法糖,那你知道为什么setup语法糖中的顶层绑定可以在template中直接使用的呢?setup语法糖是如何编译成setup函数的…

3个月搞定计算机二级C语言——准备工作

免费分享备考计算机二级C语言所需的编程软件、题库和资料。前言 大家好,我是梁国庆。 前天发文章说了我要备考计算机二级C语言这件事情,我已经将需要的编程软件、题库和资料准备好了。 其中包括“C语言和MsOffice”的资源,因为这些资源是在网上找的,所以在这把它分享出来,…

小白也能玩转Git:从入门到实战详细教程

Git介绍 Git是一种分布式版本控制系统,它广泛应用于软件开发中。通过Git,开发人员可以追踪文件的变化、协作工作、管理代码库等。与集中式版本控制系统(如SVN)不同,Git使每个开发人员都具有完整的代码仓库副本,这使得团队成员能够独立地在本地工作而无需持续的网络连接。…

IEC61850 调试工具 工程师必备

操作 IEC 61850 装置的理想工具,执行多种实用功能,支持 IEC 61850 第 1 版和第 2 版。目录IEC61850 调试工具 工程师必备主要功能软件截图 IEC61850 调试工具 工程师必备 下载地址:http://www.redisant.cn/iec61850client IEC 61850 是国际电工委员会(IEC)制定的一项国际标…

读AI未来进行式笔记12读后总结与感想兼导读

读AI未来进行式笔记12读后总结与感想兼导读1. 基本信息 AI未来进行式 李开复 陈楸帆 著 浙江人民出版社,2022年5月出版 1.1. 读薄率 书籍总字数301千字,笔记总字数39650字。 读薄率39650301000≈13.2% 1.2. 读厚方向千脑智能脑机穿越未来呼啸而来虚拟人AI3.0新机器人人工不智能…