kaka-manager和kafka-offset-monitor的安装和使用

打包好的资源
Kafka-manager-1.3.07
- 卷1: http://download.csdn.net/detail/hwz2311245/9475611
- 卷2: http://download.csdn.net/detail/hwz2311245/9475587
kafka-web-console-2.1.0
- 卷1: http://download.csdn.net/detail/hwz2311245/9475635
- 卷2: http://download.csdn.net/detail/hwz2311245/9475663

由于kafka本身不提供ui操作界面,操作起来只提供了有限的几个脚本,所以使用起来对其本身的运行状态无法感知。但是,kafka本身是和zookeeper相连的,而对应producer和consumer的状态保存也都是通过zookeeper完成的,因此,可以通过读取zookeeper中的信息来构建出kafka的状态。另外,kafka本身也提供了一个JMX服务端口,来供外界查询当前的状态。

这样一个明显的需求,自然就有很多开源工具已经实现了这样一系列功能。我找到的主要有三个:kafka-web-consolekafka-managerKafkaOffsetMonitor。其中,kafka-web-console已经停止更新,因此暂不考虑继续使用。而kafka-manager则是有yahoo开源出来的项目,属于商业级别的工具,因此功能最完善。

不幸的是,对于其安装过程,这些项目的readme上都描述不是很清楚,有的部分也相当费时。因此,在这里,我会介绍一下安装步骤,并共享出打包好的文件,可以省去大部分的下载时间。

这些项目大都是基于PlayFramework的,因此,要求jdk1.8以上。低版本的jdk可能会出现运行错误

kafka-manager

首先,下载并安装sbt

wget http://dl.bintray.com/sbt/debian/sbt-0.13.6.deb
sudo dpkg -i sbt-0.13.6.deb 
sudo apt-get update
sudo apt-get install sbt

然后对kaka-manager进行打包:

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

打包过程中会下载很多依赖包,且速度极慢(我用了几个小时才打包完),最后会在target/universal目录下生成zip文件。有了这个zip文件后,之后再使用就只需要有java支持就行了。打包好的kafka-manager已经上传到了csdn,链接在博文顶端,可自行下载使用。

下载并解压后,修改conf/application.conf中的kafka-manager.zkhosts="ip:port"即可,其他行可以删除。

另外,再启动kafka的时候也需要注意,必须加上通过设置JMX_PORT环境变量来启动kafka的jmx服务。另外,如果在部署kafka集群的时候,没有使用hostname而是使用的ip,那么一定要加上Djava.rmi.server.hostname来指定当前服务器的ip,其原理和kakfa中的advertised.host.name类似。

完整的命令示例如下:

KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false  -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=$ip" JMX_PORT=9997 bin/kafka-server-start.sh config/server-1.properties

其中KAFKA_JMX_OPTS是用来定义JMX设置的环境变量,前面3个参数是默认参数,在这里保持不变。JMX_PORT则是用来定义端口的,同时也是启动JMX的开关。

当然,如果你的服务器上已经部署好了DNS,不需要使用ip的话,就只需要设定JMX_PORT就好了。

启动好kafka集群后,在执行bin/kafka-manager就可以开启web界面了,端口默认为9000。启动完成之后,需要手动添加cluster,同时设置kafka版本号以及一些可选的信息,其中JMX的开关一定要打开,这样才能够获取当前kafka的数据吞吐速率。

broker信息

topci信息

KafkaOffsetMonitor

KafkaOffsetMonitor功能上不及kafka-manager,但是它提供了图形化的展示效果,因此,可以作为kafka-manager的补充工具。

KafkaOffsetMonitor其实也是需要打包的,不过这个项目的作者似乎考虑的比较周到,把打好的jar包在release中分享出来了,这样一来,就省事很多了。

直接到release目录下,找到最新(即第一个)的版本,然后找到该版本下的jar包,点击下载即可。

下载完成后,可以通过java命令执行:

java -cp KafkaOffsetMonitor-assembly-0.2.1.jar \
     com.quantifind.kafka.offsetapp.OffsetGetterWeb \
     --offsetStorage kafka \
     --zk zk-server1,zk-server2 \
     --port 8080 \
     --refresh 10.seconds \
     --retain 2.days

其中,offsetStorage目前只支持kaka,zk按照host1:port1,host2:port2…的格式去写即可,port为开启web界面的端口号,refresh为刷新时间,retain为数据保留时间(单位seconds, minutes, hours, days)。

当然,你也可以把这个命令写成脚本,保存起来。

consumer消费的topic

offset历史记录

嗨!对于安装 VS Code 和 Python,你可以按照以下步骤进行操作: 1. 首先,访问 VS Code 官方网站(https://code.visualstudio.com/)并下载适用于 macOS 的最新版本。一旦下载完成,双击安装程序并按照提示完成安装。 2. 安装完成后,打开 VS Code。你可以在 Launchpad 中找到它,或者在 Finder 中的“应用程序”文件夹中找到。 3. 现在,我们需要安装 Python 扩展。在 VS Code 的侧边栏中,点击扩展图标(四个方块)或按下快捷键 `Ctrl+Shift+X` 打开扩展视图。在搜索栏中输入“Python”,选择由 Microsoft 提供的“Python”扩展并点击“安装”。 4. 安装完 Python 扩展后,你需要确保已经在你的系统中安装了 Python。打开终端(Terminal)应用,输入 `python3 --version` 查看是否已经安装了 Python 3。 5. 如果没有安装 Python,请访问官方 Python 网站(https://www.python.org/downloads/),下载最新版本的 Python 3 安装程序。双击安装程序并按照提示完成安装。 6. 安装完成后,重新打开 VS Code。点击左下角的“Python”按钮,在弹出的菜单中选择“选择解释器”,然后选择你所安装的 Python 版本。 现在,你已经成功安装了 VS Code 和 Python,并且可以使用 VS Code 进行 Python 编程了。如果你想运行 Python 代码,可以打开一个新的文件,输入代码,然后按下快捷键 `Ctrl+S` 保存文件,再按下 `F5` 键运行代码。 希望这些步骤对你有帮助!如果还有其他问题,请随时提问。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值