Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用

博文目录

  • 0. 关于CMAK
  • 1. 安装部署
    • 1.1 安装要求
      • 1.1.1 Java JDK安装配置
      • 1.1.2 安装Scala程序构建工具Sbt
      • 1.1.3 CDH添加Kafka服务至集群步骤
    • 1.2 部署CMAK
      • 1.2.1 从源码安装
      • 1.2.2 Releases安装
      • 1.2.3 部署配置参考
  • 2. 服务配置
  • 3. 启动服务
  • 4. WebUI查看
    • 4.1 Cluster
    • 4.2 Topic
    • 4.3 Consumer
    • 4.4 Brokers

0. 关于CMAK

Cluster Manager for Apache Kafka是雅虎开源应用于Kafka集群,是基于Web管理配置的工具。

CMAK(以前称为Kafka Manager)是用于管理Apache Kafka群集的工具。1
CMAK支持以下内容:

  • 管理多个集群
  • 轻松检查集群状态(主题,使用者,偏移量,代理,副本分发,分区分发)
  • 运行首选副本选择
  • 生成带有选项的分区分配,以选择要使用的代理
  • 运行分区的重新分配(基于生成的分配)
  • 使用可选的主题配置创建主题(0.8.1.1与0.8.2+具有不同的配置)
  • 删除主题(仅在0.8.2+上受支持,并记住在代理配​​置中设置delete.topic.enable = true)
  • 现在,主题列表指示标记为删除的主题(仅在0.8.2+上受支持)
  • 批量生成多个主题的分区分配,并可以选择要使用的代理
  • 批量运行分区的多个主题的重新分配
  • 将分区添加到现有主题
  • 更新现有主题的配置
  • (可选)为代理级别和主题级别的度量启用JMX轮询。
  • (可选)过滤出在Zookeeper中没有id / owner /&offsets /目录的使用者。

1. 安装部署

1.1 安装要求

  • JDK (Java基础环境)
  • Sbt (cmak是基于Scala语言开发的,进行源码打包的应用用具。)
  • Kafka (CDH安装)
  • ZooKeeper (CDH安装)
    Apache ZooKeeper 是用于维护和同步配置数据的集中服务。是kafka集群的基础需要。

1.1.1 Java JDK安装配置

如果已有环境不满足这个条件,可以参考我的另一篇博客(Linux环境下安装Kettle软件)中关于环境变量配置部分。

1.1.2 安装Scala程序构建工具Sbt

sbt类似于Java 项目开发中像maven、gradle一样的构建工具,全称为Simple Build Tool,这是Scala标准的编译工具,可以用于编译、打包、部署等操作。

  1. 下载:Sbt Download;
  2. 解压:$ tar -zxvf sbt-x.xx.xx.tgz -C /home/app/
  3. 配置env:$ vim .bash_profile or $ vim /etc/profile
     export SBT_HOME=/home/hadoop/app/sbt
     export PATH=$SBT_HOME/bin:$PATH
    
  4. 变量生效: $ source .bash_profile or $ source /etc/profile
  5. 版本查看:$ sbt sbtVersion

1.1.3 CDH添加Kafka服务至集群步骤

1)添加服务
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第1张图片
2)选择Kafka 服务,CDH基础parcels中不含Kafka 服务,需要下载Cloudera Kafka Parcels。
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第2张图片
3)Zookeeper为基础依赖。
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第3张图片
4)选择Kafka Broker(KB),也就是需要安装kafka服务的集群主机。
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第4张图片
5)选择KB主机。
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第5张图片
6)接下来配置和启动步骤,执行完毕后的实例如下图。
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第6张图片
7)添加服务实例过程中部分配置会在配置中查看。

8)可以向Kafka服务集群新加Broker。
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第7张图片

1.2 部署CMAK

1.2.1 从源码安装

  1. 源码拉取:$ git clone https://github.com/yahoo/CMAK.git
  2. 构建zip包:$ sbt clean dist (在CMAK目录下)
  3. 解压zip包: $ unzip cmak-x.x.x.x.zip -d /opt/
  4. 创建链接:$ ln -sf /opt/cmak-x.x.x.x /opt/cmak

1.2.2 Releases安装

如果你不想拉源码,再编译,可以选择从Releases下载安装。
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第8张图片

1.2.3 部署配置参考

请参阅有关生产部署/配置的播放框架文档。2

2. 服务配置

最低配置是将用于CMAK(Apache kafka管理器)状态的Zookeeper主机。可以在conf目录的application.conf文件中找到。相同的文件将打包在分发zip文件中;您可以在所需服务器上解压缩文件后修改设置。

cmak.zkhosts="my.zookeeper.host.com:2181"

您可以通过逗号分隔来指定多个zookeeper主机,如下所示:

cmak.zkhosts="my.zookeeper.host.com:2181,other.zookeeper.host.com:2181"

另外,ZK_HOSTS如果您不想对任何值进行硬编码,请使用环境变量。

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

您可以选择通过修改application.conf中的默认列表来启用/禁用以下功能:

application.features=["KMClusterManagerFeature","KMTopicManagerFeature","KMPreferredReplicaElectionFeature","KMReassignPartitionsFeature"]

3. 启动服务

启动zk集群,kafka集群,再启动cmak服务。
解压缩产生的zipfile并将其更改为工作目录后,您可以运行以下服务:

$ bin/cmak

默认情况下,它将选择端口9000。这是可覆盖的,配置文件的位置也是如此。例如:

$ bin/cmak -Dconfig.file=/opt/cmak/conf/application.conf -Dhttp.port=8095

同样,如果java不在环境的路径中,或者需要针对其他版本的Java运行,请添加-java-home选项,如下所示:

$ bin/cmak -java-home /usr/java/latest

生产环境静默启动:

$ nohup bin/cmak -Dconfig.file=/opt/cmak/conf/application.conf -Dhttp.port=8095 &

jps查看服务进程,看到 ProdServerStart进程就说明启动成功。

编写服务启动脚本:

#!/bin/bash 
# chmod +x kafka-manager.sh
nohup /opt/cmak/bin/cmak -Dconfig.file=/opt/cmak/conf/application.conf -Dhttp.port=8095 >/opt/cmak/log/cmak.log 2>&1 &

4. WebUI查看

集群管理http://10.80.36.30:8095/
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第9张图片

4.1 Cluster

Create Cluster:
下面是新加集群并配置,可参考CMAK自述文件进行参数设置(这里启动了JMX):
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第10张图片
Cluster Summary:
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第11张图片

4.2 Topic

Create Topic:
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第12张图片
Topic List:
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第13张图片
Topic View:
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第14张图片

4.3 Consumer

Consumer List View:
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第15张图片
Consumed Topic View:
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第16张图片

4.4 Brokers

Broker List:
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第17张图片
Broker View:
Apache Kafka集群管理工具CMAK(Cluster Manager for Apache Kafka)从安装启动到配置使用_第18张图片


  1. CMAK ↩︎

  2. CMAK部署配置 ↩︎

你可能感兴趣的:(Hadoop,WorkTools,Kafka)