zoukankan      html  css  js  c++  java
  • kafka安装

    1.下载

    下载地址:http://kafka.apache.org/downloads

     以键头所指版本为例

     实际下载地址:wget http://mirror.bit.edu.cn/apache/kafka/2.1.0/kafka_2.12-2.1.0.tgz

    2.安装

    下载的版本已经编译,直接解压到想要的目录就算安装好了

    tar -zxf kafka_2.11-0.11.0.1.tgz -C /usr/myapp

     Kafka的安装方式主要分为三种:单机安装伪分布式安装分布式安装;安装基本配置一样,区别在于:单机安装是在一台服务器上只安装一个broker服务,伪分布式安装是指在一台服务器上安装多个broker服务,分布式安装是指具有多台服务器,至于每天服务器上的broker服务数量可选;

    本次为单机安装。

    3.配置单节点

    3.1 配置单节点zookeeper

    安装zookeeper,例如安装在/opt/zookeeper-3.4.9下

    conf/zoo.cfg

     

    3.2 配置单结点kafka

    复制代码
    cd /usr/myapp/kafka_2.11 #进入kafka主目录
    mkdir logs    #创建logs目录用于存放日志
    cd config       #进入配置文件所在目录
    vi server.properties broker.id=1 listeners=PLAINTEXT://192.168.220.128:9092 num.network.threads=3 num.io.threads=8 socket.send.buffer.bytes=102400 socket.receive.buffer.bytes=102400 socket.request.max.bytes=104857600 log.dirs=/usr/myapp/kafka_2.11/logs num.partitions=1 num.recovery.threads.per.data.dir=1 offsets.topic.replication.factor=1 transaction.state.log.replication.factor=1 transaction.state.log.min.isr=1 log.retention.hours=168 log.segment.bytes=1073741824 log.retention.check.interval.ms=300000 zookeeper.connect=192.168.220.128:2181 zookeeper.connection.timeout.ms=6000 group.initial.rebalance.delay.ms=0 EOF
    复制代码

    broker.id--broker的id;修改为任意自己想要的数值(和zookeeper中的id类似的)

    listeners--监听址址;修改为kafka要监听的地址

    log.dirs--日志文件存放目录;修改为自己要存放日志的目录

    zookeeper.connect--zookeeper监听地址;修改为自己的zookeeper的监听地址,如果是集群所有地址全写上用逗号(半角)隔开即可

    4.启动和停止

    启动前要配置JAVA_HOME,不然无法启动(和tomcat一样虽然输出started了但并有有启,可查看kafkaServer.out)

    启动:

    进入zookeeper/bin文件夹,$./zkServer.sh start    #启动zookeeper
    ./kafka-server-start.sh -daemon ../config/server.properties           #启动kafka

    停止:

    进入zookeeper/bin文件夹,$./zkServer.sh stop #停止zookeeper 
    ./kafka-server-stop.sh #停止kafka,centos7上可能关不了用kill -9直接杀掉

    查看是否有zookeeper和kafka进程:

    jps

    ---以下未实际操作--- 

    5.搭建集群

    5.1 zookeeper改造

    复制代码
    cd /usr/myapp/kafka_2.11/config     #进入配置文件路径
    
    cat >> zookeeper.properties << EOF
    initLimit=5
    syncLimit=2
    server.1=192.168.220.128:2888:3888
    server.2=192.168.220.129:2888:3888
    server.3=192.168.220.130:2888:3888
    EOF

    echo '1' > ../zk/data/myid #配置zookeeper的myid文件
    复制代码

    5.2 kafka改造

    编缉server.properties文件,将所有的zookeeper集群地址追加到zookeeper.connect后,每个地址间用逗号(半角)隔开即可

    5.3 集群搭建

    将上边安装配置好的kafka打包传到其创机器上,然后解压;

    对于zookeeper,各机修改myid文件的为不同的值,然后各机重启zookeeper即可。

    对于kafka,各机修改server.properties中的broker.id为不同的值listeners修改为本各机IP,然后各机重启kafka即可。

    6.测试是否可用

    创建topics:

    ./kafka-topics.sh --create --zookeeper 192.168.220.128:2181 --replication-factor 2 --partitions 1 --topic test_topics

    在一台上创建生产者:

    ./kafka-console-producer.sh --broker-list 192.168.220.128:9092 --topic test_topics

    在另一台上创建消费者:

    ./kafka-console-consumer.sh --zookeeper 192.168.220.128:2181 --topic test_topics --from-beginning

    正常的话在生产者中输入的内容,会在消费者端输出。

  • 相关阅读:
    HDU 5791 Two (DP)
    POJ 1088 滑雪 (DPor记忆化搜索)
    LightOJ 1011
    POJ 1787 Charlie's Change (多重背包 带结果组成)
    HDU 5550 Game Rooms (ccpc2015 K)(dp)
    HDU 5542 The Battle of Chibi (ccpc 南阳 C)(DP 树状数组 离散化)
    HDU 5543 Pick The Sticks (01背包)
    HDU 5546 Ancient Go (ccpc2015南阳G)
    NB-IoT的DRX、eDRX、PSM三个模式 (转载,描述的简单易懂)
    MQTT 嵌入式端通讯协议解析(转)
  • 原文地址:https://www.cnblogs.com/liuyanerfly/p/10031183.html
Copyright © 2011-2022 走看看