Kafka 命令行操作

x33g5p2x  于2021-12-19 转载在 其他  
字(9.8k)|赞(0)|评价(0)|浏览(539)

1)查看当前服务器中的所有 topic 

  1. bin/kafka-topics.sh --zookeeper backup01:2181

使用命令  bin/kafka-topics.sh --list  报异常,提示必须依赖zookeeper   前面我们就讲过kafka是依赖于zookeeper

连上zookeeper什么都没有输出,因为我们什么消息也没有,我们需要创建topic

  1. bin/kafka-topics.sh --list --zookeeper backup01:2181

2)创建 topic 

  1. bin/kafka-topics.sh --zookeeper backup01:2181 --create --replication-factor 3 --partitions 1 -topic first
  2. 选项说明:
  3. --topic 定义 topic
  4. --replication-factor 定义副本数
  5. --partitions 定义分区数

再次查看

日志分析

backup01

buckup02

buckup03

我们看见之前建立和配置好的logs目录下面生成很多文件  其中有个first-1这个就是我们创建的主题,但是这个主题是主题名字和分区名字联合命名。

还有一个最重要的是就是我们后台启动看不见kafka的启动日志在这个server.log下面我们可以查询启动相关信息

3)删除 topic 

  1. bin/kafka-topics.sh --zookeeper backup01:2181 --delete --topic first
  2. #需要 server.properties 中设置 delete.topic.enable=true 否则只是标记删除

那我们就设置一下

我们删除了之后重新建立一个first主题 一个分区一个副本

buckup01

buckup02

buckup03

我们发现一个分区一个副本就一个first-0

现在大家应该明白了什么是分区和副本

4)查看某个 Topic 的详情 

  1. bin/kafka-topics.sh --zookeeper buckup01:2181 --describe --topic first 

上面只有一个分区一个副本,下面我们创建一个secend主题3个分区3个副本,查看下主题的详情


 

分区0有3个副本

分区1也有3个副本

分区2也有3个副本

我们在创建一个主题three  2个分区2个副本

主题three    分区1的其中1个副本在buckup01机器上

主题three 分区0的其中1个副本被分配在buckup02机器上

主题three   分区0和分区1的另一个副本都在buckup03机器上 

讲了这么多估计没有不懂分区和副本了吧

注意有一点:副本数不能超过集群的机器数量

5)发送消息  向主题first发送消息(buckup01开启一个生产者)

  1. bin/kafka-console-producer.sh --brokerlist buckup01:9092 --topic first
  2. >hello world
  3. >atguigu atguigu

6)消费消息 (backup03开启一个消费者)

  1. bin/kafka-console-consumer.sh \ --zookeeper buckup03:2181 --topic first

总是报一个错误:zookeeper is not a recognized option

在新版本--zookeeper是一个过时的方法,此时,才知道原来在最新的版本中,这种启动方式已经被删除了,

最后附上0.90版本之后启动消费者的方法:

  1. bin/kafka-console-consumer.sh --bootstrap-server backup03:9092 --topic first

在backup02在开启一个消费者,需要使用--from-beginning参数

  1.  bin/kafka-console-consumer.sh --bootstrap-server backup02:9092 --topic first --from-beginning

我们在看下logs下目录  (主题__consumer_offsets   后面数字是分区  消费者默认50个分区) 

  1. [root@backup02 kafka_2.12-2.4.1]# cd logs/
  2. [root@backup02 logs]# ll
  3. total 476
  4. -rw-r--r--. 1 root root 4 Mar 29 16:31 cleaner-offset-checkpoint
  5. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-0
  6. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-12
  7. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-15
  8. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-18
  9. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-21
  10. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-24
  11. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-27
  12. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-3
  13. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-30
  14. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-33
  15. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-36
  16. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-39
  17. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-42
  18. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-45
  19. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-48
  20. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-6
  21. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-9
  22. -rw-r--r--. 1 root root 11302 Mar 29 15:56 controller.log
  23. -rw-r--r--. 1 root root 7243 Mar 29 13:56 controller.log.2020-03-29-13
  24. -rw-r--r--. 1 root root 3499 Mar 29 14:02 controller.log.2020-03-29-14
  25. -rw-r--r--. 1 root root 0 Mar 29 13:46 kafka-authorizer.log
  26. -rw-r--r--. 1 root root 0 Mar 29 13:46 kafka-request.log
  27. -rw-r--r--. 1 root root 17309 Mar 29 17:37 kafkaServer-gc.log.0.current
  28. -rw-r--r--. 1 root root 102388 Mar 29 17:36 kafkaServer.out
  29. -rw-r--r--. 1 root root 1055 Mar 29 16:31 log-cleaner.log
  30. -rw-r--r--. 1 root root 172 Mar 29 13:47 log-cleaner.log.2020-03-29-13
  31. -rw-r--r--. 1 root root 550 Mar 29 14:02 log-cleaner.log.2020-03-29-14
  32. -rw-r--r--. 1 root root 550 Mar 29 15:56 log-cleaner.log.2020-03-29-15
  33. -rw-r--r--. 1 root root 4 Mar 29 17:38 log-start-offset-checkpoint
  34. -rw-r--r--. 1 root root 88 Mar 29 15:56 meta.properties
  35. -rw-r--r--. 1 root root 452 Mar 29 17:38 recovery-point-offset-checkpoint
  36. -rw-r--r--. 1 root root 452 Mar 29 17:39 replication-offset-checkpoint
  37. drwxr-xr-x. 2 root root 141 Mar 29 16:42 secend-0
  38. drwxr-xr-x. 2 root root 141 Mar 29 16:42 secend-1
  39. drwxr-xr-x. 2 root root 141 Mar 29 16:42 secend-2
  40. -rw-r--r--. 1 root root 41838 Mar 29 17:36 server.log
  41. -rw-r--r--. 1 root root 31088 Mar 29 13:57 server.log.2020-03-29-13
  42. -rw-r--r--. 1 root root 40824 Mar 29 14:52 server.log.2020-03-29-14
  43. -rw-r--r--. 1 root root 53272 Mar 29 15:56 server.log.2020-03-29-15
  44. -rw-r--r--. 1 root root 27236 Mar 29 16:56 server.log.2020-03-29-16
  45. -rw-r--r--. 1 root root 36852 Mar 29 17:34 state-change.log
  46. -rw-r--r--. 1 root root 1145 Mar 29 13:51 state-change.log.2020-03-29-13
  47. -rw-r--r--. 1 root root 36058 Mar 29 15:56 state-change.log.2020-03-29-15
  48. -rw-r--r--. 1 root root 16465 Mar 29 16:48 state-change.log.2020-03-29-16
  49. drwxr-xr-x. 2 root root 141 Mar 29 16:48 three-0
  50. [root@backup02 logs]#

其他消费者分区

  1. [root@backup03 kafka_2.12-2.4.1]# cd logs/
  2. [root@backup03 logs]# ll
  3. total 464
  4. -rw-r--r--. 1 root root 4 Mar 29 16:31 cleaner-offset-checkpoint
  5. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-1
  6. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-10
  7. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-13
  8. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-16
  9. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-19
  10. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-22
  11. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-25
  12. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-28
  13. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-31
  14. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-34
  15. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-37
  16. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-4
  17. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-40
  18. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-43
  19. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-46
  20. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-49
  21. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-7
  22. -rw-r--r--. 1 root root 9685 Mar 29 15:56 controller.log
  23. -rw-r--r--. 1 root root 578 Mar 29 13:51 controller.log.2020-03-29-13
  24. -rw-r--r--. 1 root root 9382 Mar 29 14:03 controller.log.2020-03-29-14
  25. -rw-r--r--. 1 root root 0 Mar 29 13:47 kafka-authorizer.log
  26. -rw-r--r--. 1 root root 0 Mar 29 13:47 kafka-request.log
  27. -rw-r--r--. 1 root root 17325 Mar 29 17:38 kafkaServer-gc.log.0.current
  28. -rw-r--r--. 1 root root 100447 Mar 29 17:36 kafkaServer.out
  29. -rw-r--r--. 1 root root 844 Mar 29 16:31 log-cleaner.log
  30. -rw-r--r--. 1 root root 172 Mar 29 13:47 log-cleaner.log.2020-03-29-13
  31. -rw-r--r--. 1 root root 550 Mar 29 14:03 log-cleaner.log.2020-03-29-14
  32. -rw-r--r--. 1 root root 550 Mar 29 15:56 log-cleaner.log.2020-03-29-15
  33. -rw-r--r--. 1 root root 4 Mar 29 17:43 log-start-offset-checkpoint
  34. -rw-r--r--. 1 root root 88 Mar 29 15:56 meta.properties
  35. -rw-r--r--. 1 root root 463 Mar 29 17:43 recovery-point-offset-checkpoint
  36. -rw-r--r--. 1 root root 463 Mar 29 17:43 replication-offset-checkpoint
  37. drwxr-xr-x. 2 root root 141 Mar 29 16:42 secend-0
  38. drwxr-xr-x. 2 root root 141 Mar 29 16:42 secend-1
  39. drwxr-xr-x. 2 root root 141 Mar 29 16:42 secend-2
  40. -rw-r--r--. 1 root root 41154 Mar 29 17:36 server.log
  41. -rw-r--r--. 1 root root 31088 Mar 29 13:57 server.log.2020-03-29-13
  42. -rw-r--r--. 1 root root 40823 Mar 29 14:53 server.log.2020-03-29-14
  43. -rw-r--r--. 1 root root 45717 Mar 29 15:56 server.log.2020-03-29-15
  44. -rw-r--r--. 1 root root 27398 Mar 29 16:56 server.log.2020-03-29-16
  45. -rw-r--r--. 1 root root 36856 Mar 29 17:34 state-change.log
  46. -rw-r--r--. 1 root root 0 Mar 29 13:47 state-change.log.2020-03-29-13
  47. -rw-r--r--. 1 root root 1145 Mar 29 14:02 state-change.log.2020-03-29-14
  48. -rw-r--r--. 1 root root 25329 Mar 29 15:56 state-change.log.2020-03-29-15
  49. -rw-r--r--. 1 root root 17415 Mar 29 16:48 state-change.log.2020-03-29-16
  50. drwxr-xr-x. 2 root root 141 Mar 29 16:48 three-0
  51. drwxr-xr-x. 2 root root 141 Mar 29 16:48 three-1
  52. [root@backup03 logs]#
  1. [root@backup01 kafka_2.12-2.4.1]# cd logs/
  2. [root@backup01 logs]# ll
  3. total 696
  4. -rw-r--r--. 1 root root 4 Mar 29 16:31 cleaner-offset-checkpoint
  5. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-11
  6. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-14
  7. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-17
  8. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-2
  9. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-20
  10. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-23
  11. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-26
  12. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-29
  13. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-32
  14. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-35
  15. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-38
  16. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-41
  17. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-44
  18. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-47
  19. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-5
  20. drwxr-xr-x. 2 root root 141 Mar 29 17:34 __consumer_offsets-8
  21. -rw-r--r--. 1 root root 22485 Mar 29 17:40 controller.log
  22. -rw-r--r--. 1 root root 10857 Mar 29 13:51 controller.log.2020-03-29-13
  23. -rw-r--r--. 1 root root 11117 Mar 29 14:58 controller.log.2020-03-29-14
  24. -rw-r--r--. 1 root root 21665 Mar 29 15:56 controller.log.2020-03-29-15
  25. -rw-r--r--. 1 root root 29350 Mar 29 16:55 controller.log.2020-03-29-16
  26. drwxr-xr-x. 2 root root 141 Mar 29 16:32 first-0
  27. -rw-r--r--. 1 root root 0 Mar 29 13:40 kafka-authorizer.log
  28. -rw-r--r--. 1 root root 0 Mar 29 13:40 kafka-request.log
  29. -rw-r--r--. 1 root root 18331 Mar 29 17:42 kafkaServer-gc.log.0.current
  30. -rw-r--r--. 1 root root 104496 Mar 29 17:35 kafkaServer.out
  31. -rw-r--r--. 1 root root 844 Mar 29 16:31 log-cleaner.log
  32. -rw-r--r--. 1 root root 722 Mar 29 13:51 log-cleaner.log.2020-03-29-13
  33. -rw-r--r--. 1 root root 550 Mar 29 15:55 log-cleaner.log.2020-03-29-15
  34. -rw-r--r--. 1 root root 4 Mar 29 17:44 log-start-offset-checkpoint
  35. -rw-r--r--. 1 root root 88 Mar 29 15:55 meta.properties
  36. -rw-r--r--. 1 root root 439 Mar 29 17:44 recovery-point-offset-checkpoint
  37. -rw-r--r--. 1 root root 439 Mar 29 17:44 replication-offset-checkpoint
  38. drwxr-xr-x. 2 root root 141 Mar 29 16:42 secend-0
  39. drwxr-xr-x. 2 root root 141 Mar 29 16:42 secend-1
  40. drwxr-xr-x. 2 root root 141 Mar 29 16:42 secend-2
  41. -rw-r--r--. 1 root root 40958 Mar 29 17:35 server.log
  42. -rw-r--r--. 1 root root 71236 Mar 29 13:51 server.log.2020-03-29-13
  43. -rw-r--r--. 1 root root 942 Mar 29 14:51 server.log.2020-03-29-14
  44. -rw-r--r--. 1 root root 47315 Mar 29 15:56 server.log.2020-03-29-15
  45. -rw-r--r--. 1 root root 31355 Mar 29 16:55 server.log.2020-03-29-16
  46. -rw-r--r--. 1 root root 116986 Mar 29 17:34 state-change.log
  47. -rw-r--r--. 1 root root 1374 Mar 29 13:47 state-change.log.2020-03-29-13
  48. -rw-r--r--. 1 root root 1145 Mar 29 14:03 state-change.log.2020-03-29-14
  49. -rw-r--r--. 1 root root 42656 Mar 29 15:56 state-change.log.2020-03-29-15
  50. -rw-r--r--. 1 root root 72145 Mar 29 16:48 state-change.log.2020-03-29-16
  51. drwxr-xr-x. 2 root root 141 Mar 29 16:48 three-1

我们可以分析出 集群消费者分区几乎都是轮询的消费,说明分区就是一个负载均衡的作用

这个数据默认保存168小时  保留7天  7天自动清理

7)修改分区数 

  1. bin/kafka-topics.sh --zookeeper backup01:2181 --alter --topic first --partitions 6

相关文章