Kafka配置与命令

一笑奈何 提交于 2020-02-28 00:50:54

1.基本概念:
    producer            //消息生产者
    consumer            //消息消费者
    consumer group        //消费者组 可以通过设置group 来区分 队列模式 以及 发布订阅模式
    kafka server        //broker,kafka服务器  存放topic
    zookeeper            //hadoop namenoade + RM HA | hbase | kafka
    topic                //主题,副本数,分区  主题存在broker,一个主题 具有多个分区,每一个分区具有多个备份(备份数 小于等于 kafka节点数)
    partitions          //分区数
    replica                //备份数
    
2.安装kafka    
3.核心配置
kafka config server.properties
1. broker.id = key    唯一值
2. listeners           监听端口(提供给客户端响应的端口)
3. log.dirs =         本地日志目录
4. zookeeper.connect =  zk集群
4.启动zk
5.启动kafka
6.验证kafka是否启动 netstat -anop | grep 9092
7.kafka shell创建topic
bin/kafka-topic.sh --zookeeper master:2181 --replication-factor 3 
 --partitions 4  --create --topic test3
--zookeeper:指定zk节点
--partitions: 分区数
--replication-factor: 每个分区的备份数
--create --topic 创建主题的名称
8.kafka shell查看topic
bin/kafka-topics.sh --zookeeper master:2181 --describe --topic test1
--zookeeper:指定zk节
--describe --topic:查看 test1主题的详情
9.启动控制台生产者 
$>bin/kafka-console-producer.sh --broker-list master:9092 --topic test1
--broker-list: kafka服务
10.启动控制台消费者
$>bin/./kafka-console-consumer.sh --bootstrap-server master:9092 --topic test1 --from-beginning --zookeeper master:2181
--from-beginning:偏移量 从头开始消费

4.发布消息的时候可以指定 分区

-----------------
kafka的分区 partition


kafka 副本 replication  只要有一个副本可用 kafka就可以提供服务 ,保持高可用性

------------------------------
1.kafak基本命令
主题信息
bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic toplicName
列出主题
bin/kafka-topics.sh --list --zookeeper localhost:2181
消费者组
kafka-consumer-groups.sh --zookeeper 127.0.0.1:2181 --list
具体的某个消费者的消费详情 etlGroup
kafka-consumer-groups.sh --new-consumer --bootstrap-server 47.100.131.226:9092 --group etlGroup --describe

kafka-consumer-groups.sh --new-consumer --bootstrap-server 47.100.131.226:9092 --group etlGroup_SC --describe

kafka-consumer-groups.sh --new-consumer --bootstrap-server 139.196.187.139:9093 --group testEs --describe

kafka-consumer-groups.sh --new-consumer --bootstrap-server 139.196.187.139:9093 --group testGS --describe

./kafka-consumer-groups.sh --new-consumer --bootstrap-server 172.25.42.108:9092 --group etlGroup_HB --describe

./kafka-console-consumer.sh --topic GS.CMCC_Children_collection --from-beginning --zookeeper localhost:2181


开启kakfa 服务
$ nohup kafka-server-start.sh /home/espai/kafka/config/server.properties 1>/dev/null 2>&1 &
------------------
kafka consumer 
spring:
  kafka:
    bootstrap-servers: 47.100.131.226:9092
    consumer:
      group-id: etlGroup_test
      key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      enable-auto-commit: true
      auto-commit-interval: 5000ms
      max-poll-records: 20   【消费20后 offset才会提交更新】
#    listener:
#      concurrency: 5
 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!