kafka管理神器-kafkamanager

Posted 浪尖聊大数据

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kafka管理神器-kafkamanager相关的知识,希望对你有一定的参考价值。

好久没发过kafka的文章了,今天整理一下kafka-manager神器。

kafka管理神器-kafkamanager


java环境要求


jdk8


kafkamanager源码下载


https://github.com/yahoo/kafka-manager/releases


编译


先修改sbt源,否则会报错,而且非常慢


在~/.sbt目录下增加一个文件repositories,内容如下:



[repositories]

local

osc: http://maven.aliyun.com/nexus/content/repositories/central/

oschina-ivy:http://maven.aliyun.com/nexus/content/repositories/central/ , [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]



ib: http://maven.ibiblio.org/maven2/



ib-ivy: http://maven.ibiblio.org/maven2/ , [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]

mt-mdh:.sbt meitu$ pwd

/Users/meitu/.sbt

修改源之后编译速度很快而且无故障。


编译是在/opt/hadoop/kafka-manager-1.3.3.18/目录下执行:

./sbt clean dist


要求jdk8假如不是jdk8,可以直接指定路径:

PATH=/usr/local/oracle-java-8/bin:$PATH \
JAVA_HOME=/usr/local/oracle-java-8 \
/path/to/sbt -java-home /usr/local/oracle-java-8 clean dist


最后出现

[info] Your package is ready in /opt/hadoop/kafka-manager-1.3.3.18/target/universal/kafka-manager-1.3.3.18.zip

[info]

[success] Total time: 60 s, completed 2018-9-10 13:58:04


代表编译成功,zip生成目录是在


kafka-manager-1.3.3.18/target/universal/kafka-manager-1.3.3.18.zip



kafka-manager.zkhosts="localhost:2181"


启动,不加-Dhttp.port参数默认是9000


bin/kafka-manager -Dconfig.file=/path/to/application.conf -Dhttp.port=8080


加入java不是jdk8的话也可以单独指定jdk为jdk8

bin/kafka-manager -java-home /usr/local/oracle-java-8


kafkamanager的经典作用


1. 管理多集群

2. 便捷的监控集群状态(topics,consumers,offsets,brokers,副本分布,分区分布)

3. 运行优先副本选举

4. 可以选择指定的broker去产生副本分布策略。

5. 运行分区分布策略,根据4产生的分布策略

6. 根据自定义配置创建topic

7. 删除topic,但是前提是配置kafka的delete.topic.enable=true

8. 可以选择多个topic,然后指定特定的brokers,生成分区分布策略

9. 批量运行8生成的策略

10. 增加已存在topic的分区

11. 更新已存在topic的配置

12. 加入kafka开启jmx的话,可以监控broker和topic级别的监控指标。


kafka manager图解说明

首先创建集群

kafka管理神器-kafkamanager


接着在topic管理界面

kafka管理神器-kafkamanager

然后就是消费者界面


kafka 开启jmx的方式很简单在kafka-server-start.sh中修改如下

  

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

 

当然,在这里强调一下,对于kafka集群,虽然不耗内存,也建议将kafka的堆内存设置稍微大些。当然,对于很多公司,数据量不足以触发kafka节点内存不够导致的故障。

推荐阅读:




以上是关于kafka管理神器-kafkamanager的主要内容,如果未能解决你的问题,请参考以下文章

KafkaManager2.0.0.2安装与使用

KafkaManager对offset的两种管理方式

Kafka 监控工具之 Kafka Manager

KafkaManager安装

集群管理工具KafkaAdminClient——原理与示例

0543-5.15.0-Kerberos环境下Kafka管理工具Kafka Eagle安装使用