| 
 
   本文中的操作均基于kafka_1.3.3.0,且所有命令经过实际验证。  
2|0常用工具 
新建Topic 
 
./kafka-topics --zookeeper 166.188.xx.xx --create --topic flink_source --partitions 1 --replication-factor 1  
   
删除Topic 
 
./kafka-topics --zookeeper 166.188.xx.xx --delete --topic flink_source  
   
查看所有Topic 
 
./kafka-topics --zookeeper 166.188.xx.xx --list  
   
查看指定Topic详情 
 
./kafka-topics --zookeeper 166.188.xx.xx --topic flink_source --describe  
   
查看consumer group列表 
  查看consumer group列表有新、旧两种命令,分别查看新版(信息保存在broker中)consumer列表和老版  
(信息保存在zookeeper中)consumer列表,因而需要区分指定bootstrap--server和zookeeper参数。  
 
./kafka-consumer-groups --new-consumer --bootstrap-server 166.188.xx.xx:9092 --list  
   
 
./kafka-consumer-groups --zookeeper 166.188.20.32:2181 --list  
   
?查看指定consumer group详情 
 
./kafka-consumer-groups --new-consumer --bootstrap-server 166.188.xx.xx:9092 --group logstash --describe  
   
 
./kafka-consumer-groups --zookeeper 166.188.xx.xx:2181 --group console-consumer-12278 --describe  
   
  这里同样需要根据新、旧版本的consumer,分别指定bootstrap-server与zookeeper参数。其中依次  
展示group名称、消费的topic名称、partition id、consumer group最后一次提交的offset、最后提交的生  
产消息offset、消费offset与生产offset之间的差值、当前消费topic-partition的group成员id(不一定包含  
hostname)。  
3|0补充知识 
消费组列名解读 
- TOPIC:消费者的topic名称
 - PARTITION:分区数的名称
 - CURRENT-OFFSET:consumer group最后一次提交的offset
 - LOG-END-OFFSET:最后提交的生产消息offset
 - LAG:消费offset与生产offset之间的差值
 - CONSUMER-ID:消费者的ID编号,消费者组里面最少要有一个消费者,当然也可以有多个消费者
 - HOST:消费者的主机IP地址
 - CLIENT-ID:链接的ID编号
  
关于offset 
  kafka有个常用的设置是?auto.offset.reset?,该属性指定了消费者在读取一个没有偏移量的分  
区或者偏移量无效的情况下(因消费者长时间失效,包含偏移量的记录已经过时井被删除)该作何处理。  
它的默认值是 latest,意思是说,在偏移量无效的情况下,消费者将从最新的记录开始读取数据(在消  
费者启动之后生成的记录)。另一个值是 earliest ,意思是说,在偏移量无效的情况下,消费者将从起  
始位置读取分区的记录。  
  该属性有以下几个值:  
- earliest:当各分区下有已提交的offset时,从提交的offset开始消费;无提交的offset时,从头开始消费
 - latest:当各分区下有已提交的offset时,从提交的offset开始消费;无提交的offset时,消费新产生的该分区下的数据
 - none:topic各分区都存在已提交的offset时,从offset后开始消费;只要有一个分区不存在已提交的offset,则抛出异常
  
  这个设置只有当我们的消费者(或者消费者群组)在分区内找不到有效的offset时才会生效。 
                
        
    
 
 |