【Kafka基础】topic命令行工具kafka-topics.sh:基础操作命令解析

Kafka作为分布式流处理平台的核心组件,其主题管理是每个开发者必须掌握的关键技能。本文将详细解析kafka-topics.sh工具的使用技巧,从基础操作操作开始,助您轻松驾驭Kafka主题管理。

1 创建主题

复制代码
/export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-topics.sh --create \
    --bootstrap-server 192.168.10.33:9092 \
    --topic testtopic \
    --partitions 3 \
    --replication-factor 2

参数说明:

  • --create:创建新主题
  • --bootstrap-server:指定Kafka服务器地址(格式为host:port)
  • --topic:要创建的主题名称
  • --partitions:主题的分区数量(决定并行度)
  • --replication-factor:副本因子(决定数据冗余度)

    示例

    [root@node6 bin]# /export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-topics.sh --create \

    复制代码
    --bootstrap-server 192.168.10.33:9092 \
    --topic testtopic \
    --partitions 3 \
    --replication-factor 2

    Created topic testtopic.
    [root@node6 bin]#

2 列出所有主题

复制代码
/export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-topics.sh --list \
    --bootstrap-server 192.168.10.33:9092

参数说明:

  • --list:列出集群中所有可用主题

    示例

    [root@node6 bin]# /export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-topics.sh --list \

    复制代码
    --bootstrap-server 192.168.10.33:9092

    __consumer_offsets
    test_topic
    testtopic
    [root@node6 bin]#

3 查看主题详情

复制代码
/export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-topics.sh --describe \
    --bootstrap-server 192.168.10.33:9092 \
    --topic testtopic

参数说明:

  • --describe:显示主题的详细信息
  • --topic:指定要查看的主题

    示例

    [root@node6 bin]# /export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-topics.sh --describe \

    复制代码
    --bootstrap-server 192.168.10.33:9092 \
    --topic testtopic

    Topic: testtopic PartitionCount: 3 ReplicationFactor: 2 Configs: compression.type=producer,min.insync.replicas=2,segment.jitter.ms=30000,cleanup.policy=delete,segment.bytes=1073741824,max.message.bytes=10485760,unclean.leader.election.enable=false
    Topic: testtopic Partition: 0 Leader: 1 Replicas: 1,2 Isr: 1,2
    Topic: testtopic Partition: 1 Leader: 2 Replicas: 2,3 Isr: 2,3
    Topic: testtopic Partition: 2 Leader: 3 Replicas: 3,1 Isr: 3,1
    [root@node6 bin]#

4 增加分区数

复制代码
/export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-topics.sh --alter \
    --bootstrap-server 192.168.10.33:9092 \
    --topic testtopic \
    --partitions 4

参数说明:

  • --alter:修改主题配置
  • --partitions:新的分区数(注意:只能增加不能减少)

    示例

    [root@node6 bin]# /export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-topics.sh --alter \

    复制代码
    --bootstrap-server 192.168.10.33:9092 \
    --topic testtopic \
    --partitions 4

    [root@node6 bin]#
    [root@node6 bin]# /export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-topics.sh --describe --bootstrap-server 192.168.10.33:9092 --topic testtopic
    Topic: testtopic PartitionCount: 4 ReplicationFactor: 2 Configs: compression.type=producer,min.insync.replicas=2,segment.jitter.ms=30000,cleanup.policy=delete,segment.bytes=1073741824,max.message.bytes=10485760,unclean.leader.election.enable=false
    Topic: testtopic Partition: 0 Leader: 1 Replicas: 1,2 Isr: 1,2
    Topic: testtopic Partition: 1 Leader: 2 Replicas: 2,3 Isr: 2,3
    Topic: testtopic Partition: 2 Leader: 3 Replicas: 3,1 Isr: 3,1
    Topic: testtopic Partition: 3 Leader: 1 Replicas: 1,3 Isr: 1,3
    [root@node6 bin]#

5 删除主题

复制代码
/export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-topics.sh --delete \
    --bootstrap-server 192.168.10.33:9092 \
    --topic testtopic

参数说明:

  • --delete:删除指定主题(需确保 delete.topic.enable=true)

    示例

    [root@node6 bin]# /export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-topics.sh --delete \

    复制代码
    --bootstrap-server 192.168.10.33:9092 \
    --topic testtopic

    [root@node6 bin]# /export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-topics.sh --list \

    复制代码
    --bootstrap-server 192.168.10.33:9092

    __consumer_offsets
    test_topic
    [root@node6 bin]#

相关推荐
Thanks_ks1 小时前
Cookie 和 Session 到底是什么关系——登录态是怎么维持的
分布式·http·jwt·cookie·session·后端开发·登录态
千里达景区票务系统2 小时前
消息队列选型对比:RabbitMQ vs RocketMQ vs Kafka
kafka·消息队列·rabbitmq·rocketmq
Sayai3 小时前
Kafka 跨数据中心日志同步实战:MirrorMaker 2 选型对比 + Flink 中继任务落地(双中心互备与消费者组隔离避坑)
大数据·运维·分布式·flink·kafka·消息队列·高可用
jianjinwssy5 小时前
从零设计一个 Agent 安全沙箱:Docker 隔离、三级风控与 Kafka 审计
人工智能·docker·kafka
CodeGL17 小时前
开源的分布式任务调度平台:XXL-Job
分布式·开源
一条泥憨鱼1 天前
【Kafka】零基础学习教程
java·分布式·学习·kafka
9624561 天前
补打一条卡,为什么要从前一天重新算:人工补录与实时重算业务复盘
java·mysql·kafka
贾伟康1 天前
【共创稿事节】HarmonyOS 7.0 HiTraceChain分布式调用链:从接入到生产验证
分布式·harmonyos·可观测性·调用链·hitracechain
RobinXYuan2 天前
【Kafka 源码手记】05 Broker 网络层与请求处理(中):Processor 事件循环与线上的字节
kafka·源码阅读
NiceZack2 天前
Hadoop 部署全流程教程:从新装 CentOS 到伪分布式与完全分布式
hadoop·分布式·centos