好久没发过kafka的文章了,今天整理一下kafka-manager神器。

java环境要求

jdk8

kafkamanager源码下载

https://github.com/yahoo/kafka-manager/releases

编译

先修改sbt源,否则会报错,而且非常慢

在~/.sbt目录下增加一个文件repositories,内容如下:

, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]

ib: http://maven.ibiblio.org/maven2/

ib-ivy: http://maven.ibiblio.org/maven2/ , [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]

mt-mdh:.sbt meitu$ pwd

/Users/meitu/.sbt

修改源之后编译速度很快而且无故障。

编译是在/opt/hadoop/kafka-manager-1.3.3.18/目录下执行:


要求jdk8假如不是jdk8,可以直接指定路径:

8/bin:$PATH \
JAVA_HOME=/usr/local/oracle-java-8 \
/path/to/sbt -java-home /usr/local/oracle-java-8 clean dist

最后出现

package is ready in /opt/hadoop/kafka-manager-1.3.3.18/target/universal/kafka-manager-1.3.3.18.zip

[info]

[success] Total time: 60 s, completed 2018-9-10 13:58:04

代表编译成功,zip生成目录是在

1.3.3.18/target/universal/kafka-manager-1.3.3.18.zip

在配置conf/application.conf 中加入zookeeper的地址,不一定是kafka的集群zk地址

"localhost:2181"

启动,不加-Dhttp.port参数默认是9000


加入java不是jdk8的话也可以单独指定jdk为jdk8

8

kafkamanager的经典作用

 

1. 管理多集群

2.
便捷的监控集群状态(topics,consumers,offsets,brokers,副本分布,分区分布)

3. 运行优先副本选举

4. 可以选择指定的broker去产生副本分布策略。

5. 运行分区分布策略,根据4产生的分布策略

6. 根据自定义配置创建topic

7.
删除topic,但是前提是配置kafka的delete.topic.enable=true

8. 可以选择多个topic,然后指定特定的brokers,生成分区分布策略

9. 批量运行8生成的策略

10. 增加已存在topic的分区

11. 更新已存在topic的配置

12. 加入kafka开启jmx的话,可以监控broker和topic级别的监控指标。

kafka manager图解说明

首先创建集群

接着在topic管理界面

然后就是消费者界面

主要关注的是图上所属指标,建议大家使用测试,当然非常建议按照本文操作一遍,但是不想编译或者编译不成功也可以,关联词大全在公众号恢复
1024 获取浪院长编译好的。

kafka 开启jmx的方式很简单在kafka-server-start.sh中修改如下

    export JMX_PORT="9999"
fi

?

当然,在这里强调一下,对于kafka集群,虽然不耗内存,也建议将kafka的堆内存设置稍微大些。当然,对于很多公司,数据量不足以触发kafka节点内存不够导致的故障。

推荐阅读:

消息队列服务Kafka揭秘:痛点、优势以及适用场景

关于Spark Streaming感知kafka动态分区的问题

Kafka源码系列之源码分析zookeeper在kafka的作用


文章来源:https://blog.csdn.net/rlnLo2pNEfx9c/article/details/82599220

kafka管理神器-kafkamanager的更多相关文章

  1. 给ambari集群里的kafka安装基于web的kafka管理工具Kafka-manager(图文详解)

    不多说,直接上干货! 参考博客 基于Web的Kafka管理器工具之Kafka-manager的编译部署详细安装 (支持kafka0.8.0.9和0.10以后版本)(图文详解)(默认端口或任意自定义端口 ...

  2. kafka管理器kafka-manager部署安装

    运行的环境要求 Kafka 0.8.1.1+ sbt 0.13.x Java 7+ 功能 为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个叫做Kafka管理器的基于Web工具, ...

  3. kafka管理器之kafka-manager

    功能 为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个叫做Kafka管理器的基于Web工具,叫做 Kafka Manager.这个管理工具可以很容易地发现分布在集群中的哪些to ...

  4. 基于Web的Kafka管理器工具之Kafka-manager的编译部署详细安装 (支持kafka0.8、0.9和0.10以后版本)(图文详解)(默认端口或任意自定义端口)

    不多说,直接上干货! 至于为什么,要写这篇博客以及安装Kafka-manager? 问题详情 无奈于,在kafka里没有一个较好自带的web ui.启动后无法观看,并且不友好.所以,需安装一个第三方的 ...

  5. Kafka界面管理工具-kafkamanager

    在上一篇文章<Linux安装Kafka>中,已经介绍了如何在Linux安装Kafka,以及Kafka的启动/关闭和创建发话题并产生消息和消费消息.这篇文章就介绍介绍Kafka管理界面(ka ...

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

    一.kafka-manager 简介 为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个叫做Kafka管理器的基于Web工具,叫做 Kafka Manager.这个管理工具可以很 ...

  7. 基于Web的Kafka管理器工具之Kafka-manager启动时出现Exception in thread "main" java.lang.UnsupportedClassVersionError错误解决办法(图文详解)

    不多说,直接上干货! 前期博客 基于Web的Kafka管理器工具之Kafka-manager的编译部署详细安装 (支持kafka0.8.0.9和0.10以后版本)(图文详解)   问题详情 我在Kaf ...

  8. 基于Web的Kafka管理器工具之Kafka-manager安装之后第一次进入web UI的初步配置(图文详解)

    前期博客 基于Web的Kafka管理器工具之Kafka-manager的编译部署详细安装 (支持kafka0.8.0.9和0.10以后版本)(图文详解) 基于Web的Kafka管理器工具之Kafka- ...

  9. Kafka集群管理工具kafka-manager

    一.kafka-manager简介 kafka-manager是目前最受欢迎的kafka集群管理工具,最早由雅虎开源,用户可以在Web界面执行一些简单的集群管理操作.具体支持以下内容: 管理多个集群 ...

随机推荐

  1. 如何实现从登录接口响应数据中提取JSESSIONID

    通过调用接口,对服务器产生压力,单接口测试,会遇到响应数据返回的是要求先登录.这是我们在调用这个接口时,根据业务逻辑,必须先登录才可以,比如:提交订单,那么就需要先获取用户登录的JSESSIONID, ...

  2. MyBatis 学习二之简单练习巩固

    1.新建一个maven项目并在pom.xml中添加依赖 2.项目架构   配置文件:SqlMapConfig.xml <?xml version="1.0" encoding ...

  3. Spark教程——(1)安装Spark

    Cloudera Manager介绍     Cloudera Manager(简称CM)是Cloudera公司开发的一款大数据集群安装部署利器,这款利器具有集群自动化安装.中心化管理.集群监控.报警 ...

  4. gerrit关闭管理员权限后解决办法

    问题描述:gerrit以管理员的身份登录后,create new list和 create new group不显示,导致无法创建新的项目和权限组 出现问题:gerrit可视化页面误删all_proj ...

  5. 5.8 Nginx 常用功能的配置

  6. 关于python中format占位符中的 {!} 参数

    在看celery的时候,发现里面有这么一句 print('Request: {0!r}'.format(self.request)) 关于里面的{0!r}是什么意思翻了一下文档. 文档里是这么描述的 ...

  7. java 十大经典排序算法

    十大排序算法可以说是每个程序员都必须得掌握的了,花了一天的时间把代码实现且整理了一下,为了方便大家学习,我把它整理成一篇文章,每种算法会有简单的算法思想描述,为了方便大家理解,我还找来了动图演示:这还 ...

  8. 论文阅读:Blink-Fast Connectivity Recovery Entirely in the Data Plane

    1.背景 在网络中,链路故障的发生在所难免,为了降低故障带来的影响,就需要重新路由,将数据传输到合适的链路上.当因为链路故障发生处的不同,也有不同的解决方法. AS(Autonomous System ...

  9. DBlink查看,创建于删除

    1.查看dblink select owner,object_name from dba_objects where object_type='DATABASE LINK'; 或者 select * ...

  10. 原生JS写表单验证提交功能

    先上效果图: 表单的基础内容就是昵称判断.手机号判断.邮箱判断.身份证号码判断,这里是用到正则验证检验格式. 页面的表单写法就是一个form的提交.输入框用input来实现,输入内容用value来获取 ...