zoukankan      html  css  js  c++  java
  • Kafka 集群部署

    kafka是一个分布式消息队列,需要依赖ZooKeeper,请先安装好zk集群

    kafka安装包解压

    $ tar xf kafka_2.10-0.9.0.1.tgz
    $ mv kafka_2.10-0.9.0.1 /usr/kafka
    $ cd /usr/kafka

    配置文件

    server.properties
    # The id of the broker. This must be set to a unique integer for each broker.
    broker.id=0
    
    # Zookeeper connection string (see zookeeper docs for details).
    # This is a comma separated host:port pairs, each corresponding to a zk
    # server. e.g. "127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002".
    # You can also append an optional chroot string to the urls to specify the
    # root directory for all kafka znodes.
    zookeeper.connect=node1:2181,node2:2181,node3:2181

    规划有3个节点,broker的id应该不同
    node1为broker.id=0
    node2为broker.id=1
    node3为broker.id=2


    node1上复制kafka目录到其他节点

    $ scp -r /usr/kafka node2:/usr/
    $ scp -r /usr/kafka node3:/usr/

    node2、node3上替换broker.id

    $ sed -i -e 's/broker.id=.*/broker.id=1/' /usr/kafka/config/server.properties
    $ sed -i -e 's/broker.id=.*/broker.id=2/' /usr/kafka/config/server.properties


    可以配置环境变量,可选

    export KAFKA_HOME=/usr/kafka
    PATH=$PATH:$KAFKA_HOME/bin


    启动kafka
    1、在3个节点启动ZooKeeper
    2、在3个节点启动kafka

    $ bin/kafka-server-start.sh config/server.properties


    测试
    创建话题,使用kafka-topics.sh

    $ kafka-topics.sh --zookeeper node1:2181,node2:2181,node3:2181 --topic test --replication-factor 2 --partitions 3 --create
    $ kafka-topics.sh --zookeeper node1:2181,node2:2181,node3:2181 --list
    $ kafka-topics.sh --zookeeper node1:2181,node2:2181,node3:2181 --describe --topic test

    创建生成者和消费者
    在任意节点上开启生成者

    $ bin/kafka-console-producer.sh --broker-list node1:9092,node2:9092,node3:9092 --topic test

    可以在多个节点上开启多个消费者

    $ bin/kafka-console-consumer.sh --zookeeper node1:2181,node2:2181,node3:2181 --from-beginning --topic test 

    --from-beginning 表示从最早开始获取队列的数据
    消费几条数据后,执行下面的语句,看看是否从头开始,以及不同partition返回数据无序性

    $ bin/kafka-console-consumer.sh --zookeeper node1:2181,node2:2181,node3:2181 --topic test

    返回数据是无序的。

  • 相关阅读:
    现代软件工程 第一周博客作业
    最后一周总结
    阅读后感
    软件工程作业个人项目——csdn app分析
    第二次结对编程
    软件工程作业二
    软件工程作业一
    ASE 课程最后小结
    阅读后感
    Judy Beta 第五天
  • 原文地址:https://www.cnblogs.com/one--way/p/5765692.html
Copyright © 2011-2022 走看看