kafka验证消息时报错

问题

bash 复制代码
./kafka-console-consumer.sh --bootstrap-server 192.168.1.190:9092 --consumer.config /usr/local/kafka/config/sasl-consumer.properties --topic COMMAND_RESP --from-beginning --group KAFKA_CONSUMER_GROUP_ID
bash 复制代码
[root@drone-upms bin]# ./kafka-console-consumer.sh --bootstrap-server 192.168.1.190:9092 --consumer.config /usr/local/kafka/config/sasl-consumer.properties --topic COMMAND_RESP --from-beginning --group KAFKA_CONSUMER_GROUP_ID
[2025-11-17 13:46:23,640] WARN [Consumer clientId=console-consumer, groupId=KAFKA_CONSUMER_GROUP_ID] Error while fetching metadata with correlation id 2 : {COMMAND_RESP=TOPIC_AUTHORIZATION_FAILED} (org.apache.kafka.clients.NetworkClient)
[2025-11-17 13:46:23,641] ERROR [Consumer clientId=console-consumer, groupId=KAFKA_CONSUMER_GROUP_ID] Topic authorization failed for topics [COMMAND_RESP] (org.apache.kafka.clients.Metadata)
[2025-11-17 13:46:23,642] ERROR Error processing message, terminating consumer process:  (kafka.tools.ConsoleConsumer$)
org.apache.kafka.common.errors.TopicAuthorizationException: Not authorized to access topics: [COMMAND_RESP]
Processed a total of 0 messages

解决

查看元数据,发现topic不存在

bash 复制代码
[root@drone-upms bin]# ./kafka-topics.sh --bootstrap-server 192.168.1.190:9092 \
>   --command-config /usr/local/kafka/config/sasl-admin.properties \
>   --describe --topic COMMAND_RESP
Error while executing topic command : Topic 'COMMAND_RESP' does not exist as expected
[2025-11-17 14:02:17,904] ERROR java.lang.IllegalArgumentException: Topic 'COMMAND_RESP' does not exist as expected
	at kafka.admin.TopicCommand$.kafka$admin$TopicCommand$$ensureTopicExists(TopicCommand.scala:401)
	at kafka.admin.TopicCommand$TopicService.describeTopic(TopicCommand.scala:313)
	at kafka.admin.TopicCommand$.main(TopicCommand.scala:61)
	at kafka.admin.TopicCommand.main(TopicCommand.scala)
 (kafka.admin.TopicCommand$)

重建主题(若ZooKeeper中缺失)

强制删除残留的ACL并重新创建主题:

复制代码
(我这里只创建主题就行了,其它情况可能要删除ACL)
bash 复制代码
# 删除所有残留的ACL(谨慎操作!)
./kafka-acls.sh --bootstrap-server 192.168.1.190:9092 \
  --command-config /usr/local/kafka/config/sasl-admin.properties \
  --remove --allow-principal User:* --topic COMMAND_RESP --all

# 重新创建主题(确保副本数和分区数合理)
./kafka-topics.sh --bootstrap-server 192.168.1.190:9092 \
  --command-config /usr/local/kafka/config/sasl-admin.properties \
  --create --topic COMMAND_RESP \
  --partitions 1 --replication-factor 1
修复ZooKeeper元数据(若节点存在但损坏)
bash 复制代码
# 删除损坏的节点
rmr /brokers/topics/COMMAND_RESP

# 重新创建主题(触发ZooKeeper元数据同步)
./kafka-topics.sh --bootstrap-server 192.168.1.190:9092 \
  --command-config /usr/local/kafka/config/sasl-admin.properties \
  --create --topic COMMAND_RESP \
  --partitions 1 --replication-factor 1
相关推荐
霸道流氓气质4 分钟前
分布式系统设计:技术解析与实践
分布式
ACP广源盛139246256733 小时前
蚂蚁百灵 Ling‑3.0‑flash 开源 + 昇腾 0‑Day 原生适配@ACP#GSV9001E 在国产算力矩阵中的机会与落地场景
大数据·人工智能·分布式·单片机·嵌入式硬件
汽车仪器仪表相关领域7 小时前
KRYPTON坚固型IP67 EtherCAT总线数据采集模块:工业级分布式采集方案
分布式·功能测试·汽车·压力测试·可用性测试
霸道流氓气质9 小时前
Java中信号量(Semaphore):从本地到分布式
java·开发语言·分布式
naierfengdian10 小时前
分布式风电助力乡村能源转型的技术路径
分布式·能源
霸道流氓气质11 小时前
RedLock:Redis 分布式锁的高可用方案
数据库·redis·分布式
DLYSB_11 小时前
Kafka 消费倾斜死锁与 Partition 掉队:我用 Rust 写了个“数据管道物理哨兵”,比 Grafana 报警快了 18 秒
rust·kafka·grafana·报警灯
hhzz11 小时前
《深度学习框架PyTorch入门与实践》系列:09-分布式与并行训练之DataParallel、DDP与Horovod
pytorch·分布式·深度学习
creator_Li12 小时前
Kafka消费者offset提交
kafka
TDengine (老段)13 小时前
TDengine 第三方工具 — Telegraf、Kafka Connect、Flink、Spark
大数据·数据库·物联网·flink·kafka·时序数据库·tdengine