Kafka相关命令

  创建topic

bin/kafka-topics.sh --create --zookeeper node-01:2181 --replication-factor 4 --partitions 3 --topic test
  • partitions

    指定topic分区数。

    控制将topic分成多少个log。可以显示指定,如果不指定,会使用server.properties中的num.partitions配置的数量;

    虽然增加分区数可以提高kafka集群的吞吐量,但是过多的分区或者单台服务器上的分区数过多,会增加不可用鸡延迟的风险。因为多的分区数,需要打开多的文件句柄、增加点到点的延时、增加客户端的内存消耗;

    分区数也限制了consumer的并行度,即限制了并行consumer消息的线程数不能大区分区数;

    分区数也限制了producer发送消息是指定的分区。如创建topic时分区设置为1,producer发送消息时通过自定义的分区方法指定分区为2或者以上的数都会出错,这种情况可以通过alter-partitions来增加分区。

  • replication-factor

    replication-factor控制消息保存在几个broker(服务器)上,一般情况下小于等于broker的个数;

    如果没有在创建时显示指定或者通过API向一个不存在的topic生产消息时会使用server.properties中default.replication.factor配置的数量。

  查看所有topic列表

bin/kafka-topics.sh --list --zookeeper node-01:2181

  查看指定topic信息

bin/kafka-topics.sh --zookeeper node-01:2181 --describe --topic test

  Topic:test PartitionCount:3 ReplicationFactor:2 Configs:
  Topic: test Partition: 0 Leader: 0 Replicas: 0,2 Isr: 0,2
  Topic: test Partition: 1 Leader: 1 Replicas: 1,0 Isr: 0,1
  Topic: test Partition: 2 Leader: 2 Replicas: 2,1 Isr: 2,1

  向 topic 生产数据

bin/kafka-console-producer.sh --broker-list node-01:9092 --topic test

  消费 topic 的数据

# 消费新数据
bin/kafka-console-consumer.sh --zookeeper node-01:2181 --topic test
# 从头开始消费数据
bin/kafka-console-consumer.sh --zookeeper node-01:2181 --topic test --from-beginning

  查看topic在分区中的偏移量

# time为-1时表示最大值,time为-2时表示最小值
bin/kafka-run-class.sh kafka.tools.GetOffsetShell --topic test --time -1 --broker-list node-01:9092 --partitions 0

  test:0:69

  查看组消费情况

bin/kafka-consumer-groups.sh --zookeeper node-01:2181 --describe --group console-consumer-71998

  TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG CONSUMER-ID
  sync    0        5          5      0     -
  sync    1        5          5      0     -
  sync    2        5          5      0     -

  TOPIC:创建时topic名称
  PARTITION:分区编号
  CURRENT-OFFSET:表示该parition已经消费了多少条message
  LOG-END-OFFSET:表示该partition已经写了多少条message
  LAG:表示有多少条message没有被消费。
  CONSUMER-ID:表示消费者

 

 

 

 

 

 

 

你可能感兴趣的:(Kafka相关命令)