欢迎关注大数据技术架构与案例微信公众号:过往记忆大数据
过往记忆博客公众号iteblog_hadoop
欢迎关注微信公众号:
过往记忆大数据

Apache Kafka监控之Kafka Web Console

昨天在《Apache Kafka监控之KafkaOffsetMonitor》介绍了KafkaOffsetMonitor的编译以及配置等内容,今天继续来介绍Kafka的第二种监控系统Kafka Web Console。他也是一款开源的系统,源码的地址在https://github.com/claudemamo/kafka-web-console中。Kafka Web Console也是用Scala语言编写的Java web程序用于监控Apache Kafka。这个系统的功能和KafkaOffsetMonitor很类似,但是我们从源码角度来看,这款系统实现比KafkaOffsetMonitor要复杂很多,而且编译配置比KafkaOffsetMonitor较麻烦。

要想运行这套系统我们需要的先行条件为:

  1. Play Framework 2.2.x
  2. Apache Kafka 0.8.x
  3. Zookeeper 3.3.3 or 3.3.4

同样,我们从https://github.com/claudemamo/kafka-web-console上面将源码下载下来,然后用sbt进行编译,在编译前我们需要做如下的修改:
1、Kafka Web Console默认用的数据库是H2,它支持以下几种数据库:

H2 (default)
PostgreSql
Oracle
DB2
MySQL
Apache Derby
Microsoft SQL Server

为了方便,我们可以使用Mysql数据库,只要做如下修改即可,找到 conf/application.conf文件,并修改如下

#############################################################################
 User: 过往记忆
 Date: 14-08-08
 Time: 11:37
 bolg: https://www.iteblog.com
 本文地址:https://www.iteblog.com/archives/1084.html
 过往记忆博客,专注于hadoop、hive、spark、shark、flume的技术博客,大量的干货
 过往记忆博客微信公共帐号:iteblog_hadoop
#############################################################################
将这个
db.default.driver=org.h2.Driver
db.default.url="jdbc:h2:file:play"
# db.default.user=sa
# db.default.password=""


修改成
db.default.driver=com.mysql.jdbc.Driver
db.default.url="jdbc:mysql://localhost:3306/kafkamonitor"
db.default.user=iteblog
db.default.pass=wyp

我们还需要修改build.sbt,加入对Mysql的依赖:

"mysql" % "mysql-connector-java" % "5.1.31"

2、执行conf/evolutions/default/bak目录下面的1.sql、2.sql和3.sql三个文件。需要注意的是,这三个sql文件不能直接运行,有语法错误,需要做一些修改。
上面的注意事项弄完之后,我们就可以编译下载过来的源码:

# sbt package

编译的过程比较慢,有些依赖包下载速度非常地慢,请耐心等待。

在编译的过程中,可能会出现有些依赖包无法下载,如下错误:

[warn] module not found: com.typesafe.play#sbt-plugin;2.2.1
[warn] ==== typesafe-ivy-releases: tried
[warn] http://repo.typesafe.com/typesafe/ivy-releases/
com.typesafe.play/sbt-plugin/scala_2.9.2/sbt_0.12/2.2.1/ivys/ivy.xml
[warn] ==== sbt-plugin-releases: tried
[warn] http://scalasbt.artifactoryonline.com/scalasbt/sbt-plugin-releases/
com.typesafe.play/sbt-plugin/scala_2.9.2/sbt_0.12/2.2.1/ivys/ivy.xml
[warn] ==== local: tried
[warn] /home/iteblog/.ivy2/local/com.typesafe.play/
sbt-plugin/scala_2.9.2/sbt_0.12/2.2.1/ivys/ivy.xml
[warn] ==== Typesafe repository: tried
[warn] http://repo.typesafe.com/typesafe/releases/com/
typesafe/play/sbt-plugin_2.9.2_0.12/2.2.1/sbt-plugin-2.2.1.pom
[warn] ==== public: tried
[warn] http://repo1.maven.org/maven2/com/typesafe/play/
sbt-plugin_2.9.2_0.12/2.2.1/sbt-plugin-2.2.1.pom
[warn] ::::::::::::::::::::::::::::::::::::::::::::::

==== local: tried

/home/iteblog/.ivy2/local/org.scala-sbt/collections/0.13.0/jars/collections.jar

::::::::::::::::::::::::::::::::::::::::::::::

:: FAILED DOWNLOADS ::

:: ^ see resolution messages for details ^ ::

::::::::::::::::::::::::::::::::::::::::::::::

:: org.scala-sbt#collections;0.13.0!collections.jar

::::::::::::::::::::::::::::::::::::::::::::::

我们可以手动地下载相关依赖,并放到类似/home/iteblog/.ivy2/local/org.scala-sbt/collections/0.13.0/jars/目录下面。然后再编译就可以了。

最后,我们可以通过下面命令启动Kafka Web Console监控系统:

# sbt run

并可以在http://localhost:9000查看。下面是一张效果图


如果想及时了解Spark、Hadoop或者Hbase相关的文章,欢迎关注微信公共帐号:iteblog_hadoop
本博客文章除特别声明,全部都是原创!
原创文章版权归过往记忆大数据(过往记忆)所有,未经许可不得转载。
本文链接: 【Apache Kafka监控之Kafka Web Console】(https://www.iteblog.com/archives/1084.html)
喜欢 (14)
分享 (0)
发表我的评论
取消评论

表情
本博客评论系统带有自动识别垃圾评论功能,请写一些有意义的评论,谢谢!
(3)个小伙伴在吐槽
  1. 大神,想问下这里可以创建topic吗,雅虎的maneger里面我看可以创建topic

    金小九2016-03-25 17:35 回复
  2. 为什么这个监控工具,我安装好之后 在页面添加了zookeeper自后 怎么老是 CONNECTING... 一直是这样 ??????

    king2014-10-24 20:01 回复
    • 你可以tail一下日志

      leocook2015-01-21 12:11 回复