管理工具 Kafka Manager

管理工具 Kafka Manager

一、概述

Kafka在雅虎内部被很多团队使用,媒体团队用它做实时分析流水线,可以处理高达20Gbps(压缩数据)的峰值带宽。
  为了简化开发者和服务工程师维护Kafka集群的工作,构建了一个叫做Kafka管理器的基于Web工具,叫做 Kafka Manager。这个管理工具可以很容易地发现分布在集群中的哪些topic分布不均匀,或者是分区在整个集群分布不均匀的的情况。它支持管理多个集群、选择副本、副本重新分配以及创建Topic。同时,这个管理工具也是一个非常好的可以快速浏览这个集群的工具。
  该软件是用Scala语言编写的。目前(2015年02月03日)雅虎已经开源了Kafka Manager工具。这款Kafka集群管理工具主要支持以下几个功能:
  1、管理几个不同的集群;
  2、很容易地检查集群的状态(topics, brokers, 副本的分布, 分区的分布);
  3、选择副本;
  4、产生分区分配(Generate partition assignments)基于集群的当前状态;
  5、重新分配分区。

二、Kafka Manager下载及安装

项目地址:https://github.com/yahoo/kafka-manager

这个项目比 https://github.com/claudemamo/kafka-web-console 要好用一些,显示的信息更加丰富,kafka-manager本身可以是一个集群。

不过kafka-manager也没有权限管理功能。

下载:


1

git clone git@github.com:yahoo/kafka-manager.git

下载完后,只能源代码你什么也做不了,我们要把项目编译打包,该软件是用Scala语言编写,把有编译打包很麻烦,他依赖于sbt。sbt比较难安装。

三、sbt安装

1、下载sbt-0.13.11

我的服务器是centos 自动安装几次没有成功,我还是选择手动安装。

请自己到http://www.scala-sbt.org/download.html下载最新版本,我的版本是sbt-0.13.11

2、建立目录,解压文件到所建立目录


1

2

$ sudo mkdir /opt/scala/sbt

$ sudo tar zxvf sbt-0.13.11.tgz -C /opt/scala/

  3、建立启动sbt的脚本文件


1

2

3

4

5

6

7

/*选定一个位置,建立启动sbt的脚本文本文件,如/opt/scala/sbt/ 目录下面新建文件名为sbt的文本文件*/

$ cd /opt/scala/sbt/

$ vim sbt

/*在sbt文本文件中添加

BT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M"

java $SBT_OPTS -jar /opt/scala/sbt/bin/sbt-launch.jar "[email protected]"

然后按esc键 输入 :wq 保存退出,注意红色字体中的路径可以是绝对路径也可以是相对路径,只要能够正确的定位到解压的sbt文件包中的sbt-launch.jar文件即可*/

  并修改sbt文件权限


1

$ chmod u+x sbt

  4、配置PATH环境变量,保证在控制台中可以使用sbt命令


1

2

3

$ vim /etc/profile

/*在文件尾部添加如下代码后,保存退出*/

export PATH=/opt/scala/sbt/:$PATH

  


1

2

/*使配置文件立刻生效*/

$ source /etc/profile

   5、测试sbt是否安装成功
          第一次执行时,会下载一些文件包,然后才能正常使用,要确保联网了,下载的过程分很慢。安装成功后显示如下


1

sbt sbt-version<br>[info] Set current project to sbt (in build file:/opt/scala/sbt/)<br>[info] 0.13.11

  

四、编绎打包


1

2

cd kafka-manager

sbt clean dist

  生成的包会在kafka-manager/target/universal 下面。生成的包只需要java环境就可以运行了,在部署的机器上不需要安装sbt。

如果打包会很慢的要有点耐心呀,还有可能打包失败,可以考虑配置代理。

四、Kafka Manager部署

1、打好包好,在部署机器上解压,修改好配置文件,就可以运行了--解压


1

unzip kafka-manager-1.0-SNAPSHOT.zip

 2、修改conf/application.conf,把kafka-manager.zkhosts改为自己的zookeeper服务器地址


1

kafka-manager.zkhosts="192.168.1.237:2181"

 3、启动


1

2

cd kafka-manager-1.0-SNAPSHOT/bin

./kafka-manager -Dconfig.file=../conf/application.conf

 4、查看帮助 和 后台运行


1

2

./kafka-manager -h

nohup ./kafka-manager -Dconfig.file=../conf/application.conf >/dev/null 2>&1 

 说明:正常来说,play框架应该会自动加载conf/application.conf配置里的内容,但是貌似这个不起作用,要显式指定才行。

参考: https://github.com/yahoo/kafka-manager/issues/16

5、默认http端口是9000,可以修改配置文件里的http.port的值,或者通过命令行参数传递:


1

./kafka-manager -Dhttp.port=9001

五、sbt 配置代理

sbt的配置http代理的参考文档:http://www.scala-sbt.org/0.12.1/docs/Detailed-Topics/Setup-Notes.html#http-proxy

通过-D设置叁数即可:


1

java -Dhttp.proxyHost=myproxy -Dhttp.proxyPort=8080 -Dhttp.proxyUser=username -Dhttp.proxyPassword=mypassword

  也可以用下面这种方式,设置一下SBT_OPTS的环境变量即可:


1

export SBT_OPTS="$SBT_OPTS -Dhttp.proxyHost=myproxy -Dhttp.proxyPort=myport"

  注意:myproxy,这个值里不要带http前缀,也不要带端口号。

比如,你的代理是http://localhost:8123,那么应该这样配置:


1

export SBT_OPTS="$SBT_OPTS -Dhttp.proxyHost=localhost -Dhttp.proxyPort=8123"

时间: 2024-10-13 12:22:41

管理工具 Kafka Manager的相关文章

高吞吐量的分布式发布订阅消息系统Kafka-- 管理工具 Kafka Manager

一.概述 Kafka在雅虎内部被很多团队使用,媒体团队用它做实时分析流水线,可以处理高达20Gbps(压缩数据)的峰值带宽. 为了简化开发者和服务工程师维护Kafka集群的工作,构建了一个叫做Kafka管理器的基于Web工具,叫做 Kafka Manager.这个管理工具可以很容易地发现分布在集群中的哪些topic分布不均匀,或者是分区在整个集群分布不均匀的的情况.它支持管理多个集群.选择副本.副本重新分配以及创建Topic.同时,这个管理工具也是一个非常好的可以快速浏览这个集群的工具. 该软件

【数据库】Mean web开发 03-MongoDB客户端管理工具NoSQL Manager for MongoDB的使用

简介 Mean是JavaScript的全栈开发框架.更多介绍 用MongoDB实现持久数据的存储是Mean Web全栈开发中的一部分. MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的.它的特点是高性能.易部署.易使用,存储数据非常方便. MongoDB的学习资料可参考: MongoDB中文社区 上一节介绍了MongoDB在windows下的安装方法,这篇介绍一下其NoSQL Manager for MongoDB的使用. 安装及连接 这

kafka web端管理工具 kafka-manager【转发】

1,下载与安装 $ git clone https://github.com/yahoo/kafka-manager.git $ cd kafka-manager $ ./sbt clean dist //这一步,耗时比较长 需求有java环境,我用的是java1.8 2,配置kafka-manager MacBook-Pro:universal zhangying$ pwd /Users/zhangying/Documents/www/netjoy/kafka-manager/target/u

kafka集群管理工具kafka-manager部署安装

一.kafka-manager 简介 为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个叫做Kafka管理器的基于Web工具,叫做 Kafka Manager.这个管理工具可以很容易地发现分布在集群中的哪些topic分布不均匀,或者是分区在整个集群分布不均匀的的情况.它支持管理多个集群.选择副本.副本重新分配以及创建Topic.同时,这个管理工具也是一个非常好的可以快速浏览这个集群的工具,有如下功能: 1.管理多个kafka集群2.便捷的检查kafka集群状态(topics

RPM(RPM Package Manager)程序包管理工具的常见使用方法

软件包有两种: 二进制格式的软件包和源码程序包. 如何选择适合自己的二进制格式的软件包? 1.根据CPU架构选择软件包 二进制格式的软件包就是已经把源程序转化为CPU所支持的指令集,它可以直接运行的.因为不同架构的CPU指令集不完全一样的.所以二进制格式的 软件包通常会标识适用于那种架构的CPU. CPU 常见平台arch:     1).Power  造价高.性能强劲     2).简化板的 PowerPC     3).UItraSparc     4).x86 功耗低,性能接近服务器级架构

Redis Desktop Manager桌面管理工具

Redis Desktop Manager桌面管理工具,方便管理我们放在redis中的各个缓存 及16个数据库 http://redisdesktop.com/download

RPM是RedHat Package Manager(RedHat软件包管理工具)

RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序” rpm 执行安装包二进制包(Binary)以及源代码包(Source)两种.二进制包可以直接安装在计算机中,而源代码包将会由RPM自动编译.安装.源代码包经常以src.rpm作为后缀名. 常用命令组合: -ivh:安装显示安装进度--install--verbose--hash -Uvh:升级软件包--Update: -ql:列出RPM软件包内的文件信息[Query Pa

Unity 5 官方打包管理工具 Asset Bundle Manager

http://blog.csdn.net/suifcd/article/details/51570003 Unity5在Asset bundle 打包管理上采用了全新的方式,不需要再对每个文件进行MD5比对,unity已经帮我们做好了,对需要打包的资源AssetBundle属性就行了,同事Unity还提供了一个打包管理工具 Asset Bundle Manager. 官方文档对这个工具的说明及使用方式,地址 官方的工具项目工程地址 说下使用方式,工具提供了一键打包,本地加载模拟,网络加载模拟.

Kafka集群管理工具kafka-manager的安装使用

一.kafka-manager简介 kafka-manager是目前最受欢迎的kafka集群管理工具,最早由雅虎开源,用户可以在Web界面执行一些简单的集群管理操作.具体支持以下内容: 管理多个集群 轻松检查群集状态(主题,消费者,偏移,代理,副本分发,分区分发) 运行首选副本选举 使用选项生成分区分配以选择要使用的代理 运行分区重新分配(基于生成的分配) 使用可选主题配置创建主题(0.8.1.1具有与0.8.2+不同的配置) 删除主题(仅支持0.8.2+并记住在代理配??置中设置delete.