• kafka安装与简单使用


    一、kafka安装
      安装是非常简单的,现在推荐安装0.8的版本,这个版本是非常稳定的,而且公司里面也多用此版本。
      简单的安装:
      这个是我使用的版本,kafka_2.11-0.8.2.2.tgz
      直接tar -zxvf kafka_2.11-0.8.2.2.tgz -C /soft/apps/kafka
      ok
      解压后进入,安装的目录。
      找到config目录
      
      修改里面的server.properties文件
      

      文件的详细属性为:

    #broker的全局唯一编号,不能重复
    broker.id=1
    
    #用来监听链接的端口,producer或consumer将在此端口建立连接
    port=9092
    
    #处理网络请求的线程数量
    num.network.threads=3
    
    #用来处理磁盘IO的线程数量
    num.io.threads=8
    
    #发送套接字的缓冲区大小
    socket.send.buffer.bytes=102400
    
    #接受套接字的缓冲区大小
    socket.receive.buffer.bytes=102400
    
    #请求套接字的缓冲区大小
    socket.request.max.bytes=104857600
    
    #kafka消息存放的路径
    log.dirs=/export/servers/logs/kafka
    
    #topic在当前broker上的分片个数
    num.partitions=2
    
    #用来恢复和清理data下数据的线程数量
    num.recovery.threads.per.data.dir=1
    
    #segment文件保留的最长时间,超时将被删除
    log.retention.hours=168
    
    #滚动生成新的segment文件的最大时间
    log.roll.hours=168
    
    #日志文件中每个segment的大小,默认为1G
    log.segment.bytes=1073741824
    
    #周期性检查文件大小的时间
    log.retention.check.interval.ms=300000
    
    #日志清理是否打开
    log.cleaner.enable=true
    
    #broker需要使用zookeeper保存meta数据
    zookeeper.connect=192.168.52.106:2181,192.168.52.107:2181,192.168.52.108:2181
    
    #zookeeper链接超时时间
    zookeeper.connection.timeout.ms=6000
    
    #partion buffer中,消息的条数达到阈值,将触发flush到磁盘
    log.flush.interval.messages=10000
    
    #消息buffer的时间,达到阈值,将触发flush到磁盘
    log.flush.interval.ms=3000
    
    #删除topic需要server.properties中设置delete.topic.enable=true否则只是标记删除
    delete.topic.enable=true
    
    #此处的host.name为本机IP(重要),如果不改,则客户端会抛出:Producer connection to localhost:9092 unsuccessful 错误!
    host.name=spark101

    ok,根据上面的配置修改自己的配置i文件,切记broker.id属性,全局唯一

    然后分发文件,分发后修改broker.id和host.name属性

    二、简单的使用

      注意:kafka的使用,需要zookeeper的支持,请切记在启动kafka之前,zookeeper集群已启动完毕。

      首先,启动kafka,启动成功后会jps查看会有一个kafka进程,若是启动失败,请仔细检查配置文件。

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

      创建topic

    ./bin/kafka-topics.sh --create --zookeeper spark101:2181,spark102:2181,spark103:2181 --partition 3 --replication-factor 3 --topic test01

      查看topic

    ./bin/kafka-topics.sh --list --zookeeper spark101:2181,spark102:2181,spark103:2181

      查看详情

    ./bin/kafka-topics.sh --describe --zookeeper spark101:2181,spark102:2181,spark103:2181 --topic test01

      删除(若是配置文件中delete.topic.enable属性为true会直接删除,若是没有配置默认只是标记,并未真正删除

    ./bin/kafka-topics.sh --delete --zookeeper spark101:2181,spark102:2181,spark103:2181 --topic test01

      说明:若是没有true,同时又想删除干净的话,逐步删除一下文件

    1、删除配置真实数据目录下的数据文件
    2、然后删除zookeeper下面的信息   rmr
    /admin/delete_topics/topicname   rmr /config/topics/topicname   rmr /brokers/topics/topicname

      三、API的使用,消费者和生产者之间的简单通信

      生产者:(spark101节点)

    ./bin/kafka-console-producer.sh --broker-list spark101:9092,spark102:9092,spark103:9092 --topic test03

      消费者:

    .bin/kafka-console-consumer.sh --zookeeper spark101:2181,spark102:2181,spark103:2181 --topic test03 --from-beginning

      然后在生产者中输入数据,会在消费者那里接收到

  • 相关阅读:
    [CF750D] New Year and Fireworks(暴力,规律,dfs)
    [HDOJ6034] Balala Power!(模拟,贪心,大数)
    [HIHO1560] H国的身份证号码II(dp,计数,矩阵快速幂)
    [HIHO1555] 四次方根(递推,容斥,矩阵快速幂)
    [HIHO1554] 最短的 Nore0061(DP)
    [CF831D] Office Keys(二分,贪心)
    [HDOJ6156] Palindrome Function(数位dp, 枚举)
    团体程序设计天梯赛-练习集-L1-029. 是不是太胖了
    团体程序设计天梯赛-练习集-L1-028. 判断素数
    团体程序设计天梯赛-练习集-L1-027. 出租
  • 原文地址:https://www.cnblogs.com/dongxiucai/p/9925214.html
Copyright © 2020-2023  润新知