一、日常问题处理

kafka命令
  1. ##、启动kafka服务:
  2. ./kafka-server-start.sh -daemon config/server.properties
  3. ##、创建topic
  4. ./kafka-topics.sh --create --topic test-topic --partitions 2 --replication-factor 3 --zookeeper 192.168.103.46:2181
  5. ##、 删除Topic
  6. ./kafka-topics.sh --delete --topic test-topic --zookeeper 192.168.103.46:2181
  7. ./kafka-topics.sh --delete --topic pingtai 30.4.98.53:2181,30.4.98.54:2181,30.4.98.55:2181
  8. ##、查看topic列表
  9. ./kafka-topics.sh --list --zookeeper 127.0.0.1:2181
  10. ##、查看consumer组内消费的offset
  11. ./kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper localhost:2181 --group test --topic testKJ1
  12. ##、kafka生产者客户端命令 (控制台发送消息)
  13. ./kafka-console-producer.sh --broker-list localhost:9092 --topic bi-nginx-log
  14. ##、kafka消费者客户端命令
  15. ./kafka-console-consumer.sh -zookeeper localhost:2181 --from-beginning --topic testKJ1
  16. ##、从头开始消费test的消息
  17. ./kafka-console-consumer.sh --bootstrap-server 30.4.66.23:9092,30.4.66.24:9092 --topic test --from-beginning
  18. ##、kafka从多少时间从新消费
  19. ./bin/kafka-consumer-groups.sh --bootstrap-server broker1:9092,broker2:9092 --group logstash_nginx --reset-offsets -topic nginxlog --to-datetime 2020-10-27T16:00:00.000 --execute
  20. ##、查看当前kafka的正在消费的组信息
  21. ./kafka-consumer-groups.sh --bootstrap-server 30.4.66.23:9092,30.4.66.24:9092 --list
  22. ##、查看当前kafka的消费组详细信息
  23. ./kafka-consumer-groups.sh --bootstrap-server 30.4.66.23:9092,30.4.66.24:9092,30.4.89.62:9092 --describe --group logstash2
  24. ./kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper localhost:2181 --group logstash --topic elis-smp-ubas-new
  25. ##、查看kafka的topic当前的offset值
  26. ./kafka-run-class.sh kafka.tools.GetOffsetShell --topic elis-smp-ubas-new --time -1 --broker-list 30.4.66.23:9092,30.4.66.24:9092,30.4.89.62:9092 --partitions 0
  27. 注: time为-1时表示最大值,time为-2时表示最小值
  28. ##显示topic详细信息
  29. ./kafka-topics.sh --describe --topic jumi_partner.partner --zookeeper 10.5.3.7:12181
  30. #重置topic消费者的offsets
  31. ./bin/kafka-consumer-groups.sh --bootstrap-server broker1:9092,broker2:9092 --group logstash_nginx --reset-offsets -topic nginxlog --to-datetime 2020-10-27T16:00:00.000 --execute
  32. ##查看当前kafka的正在消费的组信息
  33. ./kafka-consumer-groups.sh --bootstrap-server 172.22.8.132:9092 --list
  34. ##查看当前kafka的消费组详细信息
  35. ./kafka-consumer-groups.sh --bootstrap-server 30.4.98.52:9092,30.4.98.51:9092,30.4.98.50:9092,30.4.98.49:9092,30.4.98.44:9092,30.4.98.43:9092,30.4.98.42:9092,30.4.98.41:9092 --describe --group lops-las-wangxiao-new
  36. ./kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper 30.4.98.53:2181,30.4.98.54:2181,30.4.98.55:2181 --group lops-las-wangxiao-new --topic wangxiao
  37. #查看kafka的topic当前的offset值:
  38. ./kafka-run-class.sh kafka.tools.GetOffsetShell --topic anquanbu --time -1 --broker-list 30.4.98.52:9092,30.4.98.51:9092,30.4.98.50:9092,30.4.98.49:9092,30.4.98.44:9092,30.4.98.43:9092,30.4.98.42:9092,30.4.98.41:9092 --partitions 0
  39. --partitions 0表示topic分区为0
  40. ##控制台接收消息
  41. bin/kafka-console-consumer.sh --zookeeper 192.168.197.170:2181,192.168.197.171:2181 --from-beginning --topic test
  42. ##控制台发送消息
  43. bin/kafka-console-producer.sh --broker-list 192.168.197.170:9092,192.168.197.171: 9092 --topic test
  44. #查看log
  45. ./kafka-run-class.sh kafka.tools.DumpLogSegments --files /wls/apache/servers/kfk_lbdp-aip-prd-ins6796/data/kafkaUbasTopicProd-11/00000000010600377216.log --print-data-log >> /tmp/kafkaUbasTopicProd1.txt
  46. ##查看消费组列表
  47. bin/kafka-consumer-groups.sh --bootstrap-server 10.4.1.16:9092,10.4.1.42:9092,10.4.1.36:9092 --list
  48. #删除消费组
  49. ./kafka-consumer-groups.sh --bootstrap-server 172.22.8.132:9092 --delete --group event-risk-collect
  50. #查看单个topic配置
  51. ./kafka-topics.sh --describe --topic travel_cpp.c_trip_partner --zookeeper 172.22.8.174:2181
  52. #查看
  53. ./kafka-topics --zookeeper 172.22.8.132:2181 --describe --topic __consumer_offsets
  54. ./kafka-topics.sh --bootstrap-server 172.20.0.187:9092 --topic travel_cpp.c_trip_industry --describe
  55. #消费topic信息到文件
  56. ./kafka-run-class.sh kafka.tools.DumpLogSegments --files /data/kafka/data/alertnginx-1/00000000000000000000.log --print-data-log >> /tmp/ceshi.txt
  57. #修改单个topic日志保留时长毫秒
  58. #1天86400000毫秒 2天172800000 3天259200000
  59. ./kafka-topics.sh --topic ogg_data --zookeeper 10.75.5.191:2181 --alter --config retention.ms=86400000
  60. ./kafka-topics.sh --zookeeper 10.4.1.79:2181 -topic JMETER_METRICS --alter --config retention.ms=259200000
  61. #修改单个topic消息体大小3M
  62. #动态修改
  63. ./kafka-topics.sh --zookeeper 10.5.3.7:12181 --alter --topic jumi_partner --config max.message.bytes=10485760
  64. #配置文件修改
  65. server.properties中添加配置项
  66. #broker能接收消息的最大字节数
  67. message.max.bytes=20000000
  68. #broker可复制的消息的最大字节数
  69. fetch.message.max.bytes=20485760
  70. message.max.bytes=104857600 100M

二、kafka简介

kafka特点
可靠性:具有副本及容错机制。

可扩展性:kafka无需停机即可扩展节点及节点上线。

持久性:数据存储到磁盘上,持久性保存。

性能:kafka具有高吞吐量。达到TB级的数据,也有非常稳定的性能。

速度快:顺序写入和零拷贝技术使得kafka延迟控制在毫秒级。