您的位置:首页 > 运维架构 > Apache

Apache Kafka监控之Kafka Web Console

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

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

PlayFramework2.2.x
ApacheKafka0.8.x
Zookeeper3.3.3or3.3.4

  同样,我们从https://github.com/claudemamo/kafka-web-console上面将源码下载下来,然后用sbt进行编译,在编译前我们需要做如下的修改:

  1、KafkaWebConsole默认用的数据库是H2,它支持以下几种数据库:

1
H2
(
default
)
2
PostgreSql
3
Oracle
4
DB2
5
MySQL
6
Apache
Derby
7
Microsoft
SQLServer
为了方便,我们可以使用Mysql数据库,只要做如下修改即可,找到conf/application.conf文件,并修改如下

01
#############################################################################
02
User:
过往记忆
03
Date:
14
-
08
-
08
04
Time:
11
:
37
05
bolg:
http:
//www.iteblog.com
06
本文地址:http:
//www.iteblog.com/archives/1084
07
过往记忆博客,专注于hadoop、hive、spark、shark、flume的技术博客,大量的干货
08
过往记忆博客微信公共帐号:iteblog_hadoop
09
#############################################################################
10
将这个
11
db.
default
.driver=org.h2.Driver
12
db.
default
.url=
"jdbc:h2:file:play"
13
#
db.
default
.user=sa
14
#
db.
default
.password=
""
15
16
17
修改成
18
db.
default
.driver=com.mysql.jdbc.Driver
19
db.
default
.url=
"jdbc:mysql://localhost:3306/kafkamonitor"
20
db.
default
.user=iteblog
21
db.
default
.pass=wyp
我们还需要修改build.sbt,加入对Mysql的依赖:

1
"mysql"
%
"mysql-connector-java"
%
"5.1.31"
  2、执行conf/evolutions/default/bak目录下面的1.sql、2.sql和3.sql三个文件。需要注意的是,这三个sql文件不能直接运行,有语法错误,需要做一些修改。

上面的注意事项弄完之后,我们就可以编译下载过来的源码:

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

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

01
[warn]
modulenotfound:com.typesafe.play#sbt-plugin;
2.2
.
1
02
[warn]
====typesafe-ivy-releases:tried
03
[warn]
http:
//repo.typesafe.com/typesafe/ivy-releases/
04
com.typesafe.play/sbt-plugin/scala_2.
9.2
/sbt_0.
12
/
2.2
.
1
/ivys/ivy.xml
05
[warn]
====sbt-plugin-releases:tried
06
[warn]
http:
//scalasbt.artifactoryonline.com/scalasbt/sbt-plugin-releases/
07
com.typesafe.play/sbt-plugin/scala_2.
9.2
/sbt_0.
12
/
2.2
.
1
/ivys/ivy.xml
08
[warn]
====local:tried
09
[warn]
/home/iteblog/.ivy2/local/com.typesafe.play/
10
sbt-plugin/scala_2.
9.2
/sbt_0.
12
/
2.2
.
1
/ivys/ivy.xml
11
[warn]
====Typesaferepository:tried
12
[warn]
http:
//repo.typesafe.com/typesafe/releases/com/
13
typesafe/play/sbt-plugin_2.
9
.2_0.
12
/
2.2
.
1
/sbt-plugin-
2.2
.
1
.pom
14
[warn]
====
public
:
tried
15
[warn]
http:
//repo1.maven.org/maven2/com/typesafe/play/
16
sbt-plugin_2.
9
.2_0.
12
/
2.2
.
1
/sbt-plugin-
2.2
.
1
.pom
17
[warn]
::::::::::::::::::::::::::::::::::::::::::::::
18
19
====
local:tried
20
21
/home/iteblog/.ivy2/local/org.scala-sbt/collections/
0.13
.
0
/jars/collections.jar
22
23
::::::::::::::::::::::::::::::::::::::::::::::
24
25
::
FAILEDDOWNLOADS::
26
27
::
^seeresolutionmessages
for
details
^::
28
29
::::::::::::::::::::::::::::::::::::::::::::::
30
31
::
org.scala-sbt#collections;
0.13
.
0
!collections.jar
32
33
::::::::::::::::::::::::::::::::::::::::::::::
  我们可以手动地下载相关依赖,并放到类似/home/iteblog/.ivy2/local/org.scala-sbt/collections/0.13.0/jars/目录下面。然后再编译就可以了。

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

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



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: