加米谷大数据:Kafka之Manager详解

您所在的位置:网站首页 kafka生产命令 加米谷大数据:Kafka之Manager详解

加米谷大数据:Kafka之Manager详解

#加米谷大数据:Kafka之Manager详解| 来源: 网络整理| 查看: 265

原标题:加米谷大数据:Kafka之Manager详解

作为一个分布式的消息发布-订阅系统,Apache Kafka在 Yahoo内部已经被很多团队所使用,例如媒体分析团队就将其应

用到了实时分析流水线中,同时,Yahoo整个Kafka集群处理的峰值带宽超过了 20Gbps(压缩数据)。为了让开发者和服

务工程师能够更加简单地维护Kafka集群,Yahoo构建了一个基于Web的管理工具,称为Kafka Manager,日前该项目已经

在GitHub上开源。

通过Kafka Manager用户能够更容易地发现集群中哪些主题或者分区分布不均匀,同时能够管理多个集群,能够更容易地

检查集群的状态,能够创建主题,执行首选的副 本选择,能够基于集群当前的状态生成分区分配,并基于生成的分配执

行分区的重分配,此外,Kafka Manager还是一个非常好的可以快速查看集群状态的工具。

Kafka Manager使用Scala语言编写,其Web控制台基于Play Framework实现,除此之外,Yahoo还迁移了一些Apache

Kafka的帮助程序以便能够与Apache Curator框架一起工作。

安装Kafka Manager需要Kafka 0.8.1.1或者0.8.2-beta、sbt 0.13.x以及Java 7+,同时还必须要配置一个zookeeper的

主机用来管理Kafka Manager的状态。如果想要了解更多与安装配置相关的信息,可以点击这里。另外,在HackerNews上

还有一些有关于该开源项目的讨论,感兴趣的读者不妨查看这里。

Kafka在雅虎

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、重新分配分区。

以下是该集群管理工具的截图

配置

系统最少需要配置zookeepe集群的地址,可以在kafka-manager安装包的conf目录下面的application.conf文件中进行配

置。例如:

kafka-manager.zkhosts="my.zookeeper.host.com:2181"

你可以指定多个zookeeper地址,用逗号分隔:

kafka-manager.zkhosts="my.zookeeper.host.com:2181,other.zookeeper.host.com:2181"

另外, 如果你不想硬编码,可以使用环境变量ZK_HOSTS。

ZK_HOSTS="my.zookeeper.host.com:2181"

部署

下面的命令创建一个可部署应用的zip文件。

sbt clean dist

请参阅在生产部署的框架文档。

如果java不在您的路径,或者你需要建立针对特定的Java版本,请使用以下(例子中假设的是Java8):

$ 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 dist clean

这确保你的路径中的 java' 和 'javac' 的二进制文件是 oracle 发布的 java8 版本中的。下一步,监听JAVA_HOME 的

所有工具,它指向它们的 oracle 发布的 java8 位置。最后,它告诉 sbt 使用 oracle 发布的 java8 位置。

启动服务

解压刚刚的zip文件,然后启动它:

$ bin/kafka-manager

默认情况下,端口为9000。可覆盖,例如:

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

再如果java不在你的路径中,或你需要针对不同的版本,增加-java-home选项:

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

打包

如果你像创建Debian或ROM安装包,你可以使用下面命令打包:

sbt debian:packageBin

sbt rpm:packageBin

信用

Logo/favicon used is from Apache Kafka.

Most of the utils code has been adapted to work with Apache Curator from Apache Kafka.

许可证

Apache Licensed. See accompanying LICENSE file返回搜狐,查看更多

责任编辑:



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3