• Kafka命令行常用命令说明


    基于0.8.0版本。

     

    ##查看topic分布情况kafka-list-topic.sh

    bin/kafka-list-topic.sh --zookeeper 192.168.197.170:2181,192.168.197.171:2181 (列出所有topic的分区情况)
    bin/kafka-list-topic.sh --zookeeper 192.168.197.170:2181,192.168.197.171:2181 --topic test (查看test的分区情况)

    其实kafka-list-topic.sh里面就一句 
    exec $(dirname $0)/kafka-run-class.sh kafka.admin.ListTopicCommand $@
    实际是通过
    kafka-run-class.sh脚本执行的包kafka.admin下面的类

    ##创建TOPIC kafka-create-topic.sh

    bin/kafka-create-topic.sh   --replica 2 --partition 8 --topic test  --zookeeper 192.168.197.170:2181,192.168.197.171:2181

    创建名为test的topic, 8个分区分别存放数据,数据备份总共2份


    bin/kafka-create-topic.sh   --replica 1 --partition 1 --topic test2  --zookeeper 192.168.197.170:2181,192.168.197.171:2181
    结果 topic: test2 partition: 0 leader: 170 replicas: 170 isr: 170

    ##重新分配分区kafka-reassign-partitions.sh

    这个命令可以分区指定到想要的--broker-list上
    bin/kafka-reassign-partitions.sh --topics-to-move-json-file topics-to-move.json --broker-list "171" --zookeeper 192.168.197.170:2181,192.168.197.171:2181 --execute 
    cat topic-to-move.json
    {"topics":
         [{"topic": "test2"}],
         "version":1
    }

    ##为Topic增加 partition数kafka-add-partitions.sh

    bin/kafka-add-partitions.sh --topic test --partition 2  --zookeeper  192.168.197.170:2181,192.168.197.171:2181 (为topic test增加2个分区)

    ##控制台接收消息

    bin/kafka-console-consumer.sh --zookeeper  192.168.197.170:2181,192.168.197.171:2181  --from-beginning --topic test

    ##控制台发送消息

    bin/kafka-console-producer.sh --broker-list  192.168.197.170:9092,192.168.197.171: 9092    --topic test 

    ##手动均衡topic, kafka-preferred-replica-election.sh

    bin/kafka-preferred-replica-election.sh --zookeeper 192.168.197.170:2181,192.168.197.171:2181 --path-to-json-file preferred-click.json

    cat preferred-click.json
    {
     "partitions":
      [
        {"topic": "click", "partition": 0},
        {"topic": "click", "partition": 1},
        {"topic": "click", "partition": 2},
        {"topic": "click", "partition": 3},
        {"topic": "click", "partition": 4},
        {"topic": "click", "partition": 5},
        {"topic": "click", "partition": 6},
        {"topic": "click", "partition": 7},

        {"topic": "play", "partition": 0},
        {"topic": "play", "partition": 1},
        {"topic": "play", "partition": 2},
        {"topic": "play", "partition": 3},
        {"topic": "play", "partition": 4},
        {"topic": "play", "partition": 5},
        {"topic": "play", "partition": 6},
        {"topic": "play", "partition": 7}


      ]
    }

    ##删除topic,慎用,只会删除zookeeper中的元数据,消息文件须手动删除

    bin/kafka-run-class.sh kafka.admin.DeleteTopicCommand --topic test666 --zookeeper 192.168.197.170:2181 ,192.168.197.171:2181
  • 相关阅读:
    求相同号码一天内的上网流量——mapreduce
    scala初学
    对web日志文件实现按照人员、行为分类
    08 ROS阶段总结——package.xml 和 CMakeLists.txt 详细解读
    06 ROS中的节点、话题和服务
    07 ROS 的常见消息类型
    01 ROS下的三维点云数据处理(一)点云数据来源
    01 Opencv系列(一)ROS和opencv图像数据的转换
    01 ROS的运行架构——环境变量和工作空间
    02 Opencv系列(二)ROS框架下的摄像头调用方法
  • 原文地址:https://www.cnblogs.com/yanduanduan/p/6688052.html
Copyright © 2020-2023  润新知