Kafka集群及监控安装指南

kafka官网:http://kafka.apache.org/

官方文档:http://kafka.apache.org/documentation.html#quickstart

  • kafka集群安装

    下载: kafka_2.10-0.8.2.0.tar.gz

    解压: tar -zxvf kafka_2.10-0.8.2.0.tgz

    软链接配置: ln -s kafka_2.10-0.8.2.0 kafka

  • 修改配置文件

        cd kafka/config

        vi server.properties

        server.properties 配置说明(仅对需要留意的说明)

broker.id=0  // 这个ID是唯一标示,须唯一
port=9092    // 访问端口,默认为 9092
host.name=kafka-server1    // 多块网卡时,需注意。
num.io.threads=10     // disk I/O 线程数,挂多块盘的时候,应大于硬盘数
log.dirs=/home/kafka/data/kafka-logs     // 存放kafka topic数据的地址,很重要,别配错
log.retention.hours=168     // 数据缓存周期,默认为7天,硬盘不够时可以调小
zookeeper.connect=zk-server1:2181,zk-server2:2181,zk-server3:2181    // zookeeper集群连接

PS:

    scp -r kafka 至其余机器

    其余机器修改 broker.id 和 host.name

  • 启动过程:

1. 启动 zookeeper: ./zkServer.sh start

2. 启动 kafka: bin/kafka-server-start.sh /config/server.properties  通用启动脚本

  • 监控安装:

        kafka监控选用Yahoo开源的 kafka-manager,功能比较齐全。

        1. 同时管理多个不同的集群;

        2. 很容易地检查集群的状态(topics, brokers, 副本的分布, 分区的分布);

        3. 选择副本;

        4. 产生分区分配(Generate partition assignments)基于集群的当前状态;

        5. 重新分配分区;

        6. 监控进出流量,条数等信息(topics,brokers)。

        7. 支持集群化部署

        项目信息:https://github.com/yahoo/kafka-manager
        kafka-manager没有权限管理功能,所以请操作请慎重。 

        安装sbt

        sbt是scala的打包构建工具。
        安装参考:http://www.scala-sbt.org/download.html

        下载编译

        编译,生成发布包:

 git clone https://github.com/yahoo/kafka-manager
 cd kafka-manager
 sbt clean dist

        sbt clean dist会非常慢,期间遇到个错误,下载失败collections.jar,可以手工下载放在kafka-manager目录下。
        生成的zip文件会在kafka-manager/target/universal 下面。生成的包只需要java环境就可以运行了,在部署的机器上不需要安装sbt。

        部署

        在服务器上解压 生成的zip文件。

 unzip kafka-manager-1.2.4.zip

         修改conf/application.conf,把kafka-manager.zkhosts改为自己的zookeeper服务器地址,如:

 kafka-manager.zkhosts="localhost:2181"

        kafka-manager.zkhosts原配置里重复了一个,注掉即可启动

 bin/kafka-manager -Dconfig.file=conf/application.conf -Dhttp.port=9701

        http.port为web控制访问接口,默认为9000,需要修改成其他的端口。http.port 配置在application.conf里不起作用,见https://github.com/yahoo/kafka-manager/issues/16

      开启JMX

        功能:统计Kafka topic进出流量 

        开启方法
        1. 修改bin/kafka-server-start.sh,添加JMX_PORT参数,添加后样子如下(使用了9703端口,可改)

 if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
     export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
     export JMX_PORT="9703"
 fi

        2. 登陆Kafka-manager UI

 点击Add Cluster,配置Kafka集群信息,勾选 __Enable JMX Polling__,点Save即可



你可能感兴趣的:(安装,kafka,jmx,kafka-manager)