zoukankan      html  css  js  c++  java
  • 流量分析系统---kafka集群部署

    1、集群部署的基本流程

    Storm上游数据源之Kakfa

    下载安装包、解压安装包、修改配置文件、分发安装包、启动集群

    2、基础环境准备

    安装前的准备工作(zk集群已经部署完毕)
        关闭防火墙 
    chkconfig iptables off  && setenforce 0
        创建工作目录并赋权
    mkdir -p  /export/servers
    chmod 755 -R /export

    3、集群部署

    3.1下载安装包

    wget http://mirrors.hust.edu.cn/apache/kafka/0.8.2.2/kafka_2.11-0.8.2.2.tgz

    3.2解压安装包

    tar -zxvf /export/software/kafka_2.11-0.8.2.2.tgz -C /export/servers/

    cd /export/servers/

    ln -s kafka_2.11-0.8.2.2 kafka

    3.3修改配置文件

    cp   /export/servers/kafka/config/server.properties

    /export/servers/kafka/config/server.properties.bak

    vi  /export/servers/kafka/config/server.properties

    输入以下内容:

    (提前创建好mkdir -p /export/servers/logs/kafka)
    #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.32.201:2181,192.168.32.202:2181,192.168.32.203: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 
    host.name=kafka01
    advertised.host.name=192.168.32.201  #每台机子都要做相应修改

    3.4分发安装包

    scp -r /export/servers/kafka_2.11-0.8.2.2 kafka02:/export/servers

    然后分别在各机器上创建软连

    cd /export/servers/

    ln -s kafka_2.11-0.8.2.2 kafka

    3.5依次修改配置文件

    依次修改各服务器上配置文件的的broker.id,分别是1,2,3不得重复。

    host.name 改成自己的
    advertised.host.name 改成自己的

    配置环境变量

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

    3.6刷新环境变量

    source /etc/profile

    4、启动集群

    启动集群各个节点启动zookeeper

    各个节点启动集群

    #启动
    nohup kafka-server-start.sh /export/servers/kafka/config/server.properties &
    #停止
    kafka-server-stop.sh

  • 相关阅读:
    java 枚举
    日志监控
    bindActionCreators
    npm 重点小结
    怎么评价Facebook的Relay框架?Meteor.js 是什么?
    解决跨域问题
    React Test相关资料
    深入理解JavaScript系列
    前端mac下的工具
    WebKit的CSS扩展(WebKit是私有属性)
  • 原文地址:https://www.cnblogs.com/SuMeng/p/8228197.html
Copyright © 2011-2022 走看看