Kafka Shell命令介绍
前提条件
Kafka的Linux客户端已安装。安装方法可参考安装客户端。
常用的Shell命令指南
Shell命令执行方法:
- 进入Kafka客户端任意目录。
 - 初始化环境变量。
    
    
source /opt/client/bigdata_env
 - 如果当前集群已启用Kerberos认证,执行以下命令认证当前用户(该用户需要加入kafkaadmin用户组拥有Kafka管理员权限)。如果当前集群未启用Kerberos认证,则无需执行此命令。
    
    
kinit MRS集群用户
例如:kinit admin
 - 进入“客户端安装目录/Kafka/kafka/bin”执行Kafka shell命令。
 
常用的命令如下:
- 查看当前集群Topic列表。
    
sh kafka-topics.sh --list --zookeeper <ZooKeeper集群IP:2181/kafka>
 - 查看单个Topic详细信息。
    
sh kafka-topics.sh --describe --zookeeper <ZooKeeper集群IP:2181/kafka> --topic <Topic名称>
 - 删除Topic,由管理员用户操作。
    
sh kafka-topics.sh --delete --zookeeper <ZooKeeper集群IP:2181/kafka> --topic <Topic名称>
 - 创建Topic,由管理员用户操作。
    
sh kafka-topics.sh --create --zookeeper <ZooKeeper集群IP:2181/kafka> --partitions 6 --replication-factor 2 --topic <Topic名称>
 - Old Producer API生产数据。
    
sh kafka-console-producer.sh --broker-list <Kafka集群IP:9092> --topic <Topic名称> --old-producer -sync
 - Old Consumer API消费数据。
    
sh kafka-console-consumer.sh --zookeeper <ZooKeeper集群IP:2181/kafka> --topic <Topic名称> --from-beginning
 - Producer API生产消息,需要拥有该Topic生产者权限。
    
sh kafka-console-producer.sh --broker-list <Kafka集群IP:21007> --topic <Topic名称> --producer.config config/producer.properties
 - Consumer API消费数据,需要拥有该Topic的消费者权限
    
sh kafka-console-consumer.sh --topic <Topic名称> --bootstrap-server <Kafka集群IP:21007> --new-consumer --consumer.config config/consumer.properties
 
 
   - 未开启Kerberos认证的Kafka集群端口默认为9092,开启Kerberos认证的Kafka集群端口默认为21007。
 - 登录MRS Manager,选择“服务管理 > ZooKeeper > 实例”,获取ZooKeeper的quorumpeer实例的“管理IP”地址。
 - 登录MRS Manager,选择“服务管理 > Kafka > 实例”,获取Kafka的broker实例的“管理IP”地址。