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

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

  • 相关阅读:
    linux (debian) 配置静态ip
    使用yum高速部署Oracle安装环境(11g)
    shell 例程 —— 解决redis读取稳定性
    面向对象的设计模式(六),状态模式
    python调用shell命令之三慷慨法
    Codeforces Round #316 (Div. 2) C. Replacement(线段树)
    vim随想笔记(1)
    JavaSE入门学习12: Java面相对象之static使用方法
    软件架构————架构核对表
    模板管理类
  • 原文地址:https://www.cnblogs.com/liuyanerfly/p/10031183.html
Copyright © 2011-2022 走看看