tonglin0325的个人主页

Ubuntu下安装Kafka Manager

参考 : kafka管理器kafka-manager部署安装

 

下载Kafka Manager,并进行打包,由于Kafka manager是由scala写的,所以需要由sbt的支持

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

 关于sbt的的安装,请移步

1
2
http://www.cnblogs.com/tonglin0325/p/8884470.html

 配置zk的地址

1
2
在conf/application.conf中将kafka-manager.zkhosts的值设置为localhost

 打包完成后,对kafka-manager-1.3.3.17.zip包进行解压,位置在

1
2
kafka-manager/target/universal

 修改配置

1
2
vim kafka-manager-1.3.3.17/conf/application.conf

 启动Kafka manager

1
2
bin/kafka-manager -Dconfig.file=/home/lintong/software/kafka-manager-1.3.3.17/conf/application.conf -Dhttp.port=7778

访问

1
2
http://localhost:9000

然后在cluster中add cluster,比如

 

启动后如果遇到

1
2
3
[warn] o.a.k.c.p.Errors - Unexpected error code: 38.
[warn] o.a.k.c.NetworkClient - Error while fetching metadata with correlation id 98 : {__consumer_offsets=UNKNOWN}

 就手动创建一个叫__consumer_offsets的topic

如果你的kafka只有一台机器,然后遇到kafka-console-consumer无法消费的情况,可以查看一下offsets.topic.replication.factor这个参数是否为1,不是1的话消费者的offset是无法提交上去的

 

 

 启动Kafka的JMX,只需要修改kafka的启动命令就行,注意给kafka添加jmx需要在kafka manager之前

 启动kafka服务时指定JMX_PORT值:

1
2
JMX_PORT=9999 bin/kafka-server-start.sh -daemon config/server.properties   //一台机器部署多个server采用此方法

 或者修改kafka-server-start.sh,在前面加上:

1
2
export JMX_PORT=9999  //如果一台机器部署一个server 建议采用此方法

 

点击please enable consumer plooing here,配置查看消费者信息

 

Kafka Manager API 参考

1
2
https://github.com/yahoo/CMAK/blob/master/conf/routes

  

关于Kafka Manager中的一些参数说明:

Topic 指标#

Replication (副本数)

Number of Partitions (分区数)

Sum of partition offsets (offset大小,需要开启JMX支持)

Total number of Brokers (Broker总数)

Number of Brokers for Topic (Topic所占Broker数)

Preferred Replicas % ()

Brokers Skewed % (Broker 均衡率)

Brokers Spread % (Broker 扩散率)

Under-replicated % (处于同步状态的比率)

 

Metrics 指标#

Message in /sec  消息数据流量

Bytes in /sec  kafka输入数据流量

Bytes out /sec  kafka输出数据流量

Bytes rejected /sec  拒绝的流量

Failed fetch request /sec  失败的获取请求

Failed produce request /sec  失败的生产请求