Merge pull request #315 from didi/master

kafka-gateway相关功能说明
This commit is contained in:
EricZeng
2021-05-28 17:13:29 +08:00
committed by GitHub
8 changed files with 95 additions and 9 deletions

View File

@@ -7,9 +7,26 @@
---
## v2.4.1+
版本上线时间2021-05-21
### 能力提升
- 增加直接增加权限和配额的接口(v2.4.1)
- 增加接口调用可绕过登录的功能(v2.4.1)
### 体验优化
- tomcat 版本提升至8.5.66(v2.4.2)
- op接口优化拆分util接口为topic、leader两类接口(v2.4.1)
- 简化Gateway配置的Key长度(v2.4.1)
### bug修复
- 修复页面展示版本错误问题(v2.4.2)
## v2.4.0
版本上线时间2021-04-26
版本上线时间2021-05-18
### 能力提升

View File

@@ -4,7 +4,7 @@ cd $workspace
## constant
OUTPUT_DIR=./output
KM_VERSION=2.4.0
KM_VERSION=2.4.2
APP_NAME=kafka-manager
APP_DIR=${APP_NAME}-${KM_VERSION}

View File

@@ -28,6 +28,8 @@
- 16、为什么下线应用提示operation forbidden
- 17、删除Topic成功为什么过一会儿之后又出现了
- 18、如何在不登录的情况下调用一些需要登录的接口
- 19、为什么无法看到连接信息、耗时信息等指标
- 20、AppID鉴权、生产消费配额不起作用
---
@@ -200,3 +202,14 @@ for (int i= 0; i < 100000; ++i) {
### 18、如何在不登录的情况下调用一些需要登录的接口
具体见:[登录绕过](./call_api_bypass_login.md)
### 19、为什么无法看到连接信息、耗时信息等指标
连接信息、耗时信息等指标依赖于滴滴kafka-gateway和滴滴Kafka引擎通过gateway可获取到连接到该Topic的应用情况提高对Topic的管控能力。通过滴滴Kafka引擎的自带埋点可获取到耗时信息提升Topic生产消费时的可观测性。这部分内容是属于商业版的范畴暂未开源。如有需要可进行商业合作。
具体见:[滴滴Logi-KafkaManager开源版和商业版特性对比](../开源版与商业版特性对比.md)
### 20、AppID鉴权、生产消费配额不起作用
AppID鉴权、生产消费配额依赖于滴滴kafka-gateway通过gateway进行身份鉴权和生产消费限流可避免用户无限制的使用集群的流量流量大的用户会耗尽系统资源从而影响其他用户的使用造成集群的节点故障。这部分内容是属于商业版的范畴暂未开源。如有需要可进行商业合作。
具体见:[滴滴Logi-KafkaManager开源版和商业版特性对比](../开源版与商业版特性对比.md)

View File

@@ -0,0 +1,55 @@
---
![kafka-manager-logo](assets/images/common/logo_name.png)
**一站式`Apache Kafka`集群指标监控与运维管控平台**
---
**开源版、商业版对比**
纲要Logi-KafakManager的商业特性是强依赖于滴滴Kafka Gateway和滴滴kafka引擎。
滴滴KafkaGateway主要负责服务发现、安全管控身份鉴权、生产消费鉴权等、流量管控应用配额等
滴滴Kafka引擎主要负责更丰富的监控指标broker实时耗时、压缩指标、分区落盘等、磁盘过载保护等
备注两个版本的产品功能页面是一样的。区别在于开源版未使用滴滴KafkaGateway滴滴Kafka引擎部分产品功能/功能不起作用或者页面无数据
| 模块 |对比指标 |底层依赖 |开源版 |商业版 |备注 |
| --- | --- | --- | --- | --- | --- |
| 服务发现 | bootstrap地址变更对客户端无影响 | | | 是| |
| 安全管控 | 身份鉴权appID+password | | | 是 | |
| | 权限鉴权Topic+appID | | | 是 | |
| 指标监控 | Topic实时流量、历史流量 | | 是 | 是 | |
| | Broker实时耗时、历史耗时 | 引擎 | | 是 | |
| | 分区落盘 | 引擎 | | 是 | |
| | Topic里的数据压缩格式 | 引擎 | | 是 | |
| | 连接信息Topic上有哪些应用连接 | Gateway | | 是| |
| | 流量管控(应用配额、生产消费限流等) | Gateway | | 是 | |
| 监控报警 | | | 是 | 是 | 监控指标上报需对接外部监控系统夜莺or企业内部监控系统 |
| Topic运维 | 申请分区 | | 是 | 是 | |
| | 调整配额 | Gateway | | | 是 |
| | Topic数据采样 | | 是 | 是 | |
| | 消费组管理(重置消费偏移等) | | 是 | 是 | |
| 集群管理 | 集群接入(部署) | | 是 | 是 | 需手动部署集群,或借助外部的自动化部署系统(夜莺)来部署系统 |
| | 集群指标监控 | | 是 | 是 | |
| | 按照Region、逻辑集群进行管理 | | 是 | 是 | |
| | Topic迁移 | | 是 | 是| |
| | 集群任务(集群版本管理、升级、扩缩容、回滚等) | | 是 | 是 | 需借助夜莺或自动化部署系统来实现 |
| | 磁盘过载保护 | 引擎 | | 是 | |
| | 指定broker作为优选controller | Gateway | | 是 | |
| Gateway管理 | 管理 Gateway的配置文件 | Gateway | | 是 | |
| 资源治理 | 专家服务Topic分区热点、Topic分区不足、Topic长期未使用、Topic流量异常 | | 是 | 是 | 开源版:具备问题发现与基础的问题解决能力;商业版:可在此基础上,融入滴滴内部的资源治理经验,提供更加专家化的问题解决方法 |
| | 健康分 | | 是 | 是 | 开源版:具备基础的健康分算法;商业版:可融入更多的指标统计,及定制化的健康分算法 |
| 运营管理 | 资源审批应用申请、Topic申请、分区申请、配额申请、集群申请等都需要通过工单进行审批 | |是 | 是 | |
| | 账单体系根据流量核算Topic、集群费用 | | 是 | 是| |
**总结**
Logi-KafkaManager的商业特性体现在在滴滴Kafka Gateway、滴滴Kafka引擎、内部沉淀出的资源治理专家经验、可定制化的健康分算法。
从场景来看滴滴Logi-KafkaManager的开源版本在kafka集群运维、的Topic管理、监控告警、资源治理等kafka核心场景都充分开源用户的使用需求并且有着出色的表现。而商业版相较于开源版在安全管控、流量管控、更丰富的指标监控、资源治理专家经验的具有明显提升更加符合企业业务需求。
除此之外,商业版还可根据企业实际需求对平台源码进行定制化改造,并提供运维保障,稳定性保障,运营保障等服务。

View File

@@ -1,18 +1,18 @@
{
"name": "logi-kafka",
"version": "2.3.1",
"version": "2.4.3",
"description": "",
"scripts": {
"start": "webpack-dev-server",
"daily-build": "cross-env NODE_ENV=production webpack",
"pre-build": "cross-env NODE_ENV=production webpack",
"prod-build": "cross-env NODE_ENV=production webpack"
"prod-build": "cross-env NODE_ENV=production webpack",
"fix-memory": "cross-env LIMIT=4096 increase-memory-limit"
},
"author": "",
"license": "ISC",
"devDependencies": {
"@hot-loader/react-dom": "^16.8.6",
"@types/clipboard": "^2.0.1",
"@types/echarts": "^4.4.1",
"@types/lodash.debounce": "^4.0.6",
"@types/react": "^16.8.8",
@@ -21,12 +21,13 @@
"@types/spark-md5": "^3.0.2",
"antd": "^3.26.15",
"clean-webpack-plugin": "^3.0.0",
"clipboard": "2.0.6",
"clipboard": "^2.0.8",
"cross-env": "^7.0.2",
"css-loader": "^2.1.0",
"echarts": "^4.5.0",
"file-loader": "^5.0.2",
"html-webpack-plugin": "^3.2.0",
"increase-memory-limit": "^1.0.7",
"less": "^3.9.0",
"less-loader": "^4.1.0",
"mini-css-extract-plugin": "^0.6.0",

View File

@@ -54,7 +54,7 @@ export class AlarmSelect extends React.Component<IAlarmSelectProps> {
<a
className="icon-color"
target="_blank"
href="https://github.com/didi/kafka-manager"
href="https://github.com/didi/Logi-KafkaManager/blob/master/docs/user_guide/faq.md"
>
</a>

View File

@@ -145,7 +145,7 @@ export const Header = observer((props: IHeader) => {
<div className="left-content">
<img className="kafka-header-icon" src={logoUrl} alt="" />
<span className="kafka-header-text">Kafka Manager</span>
<a className='kafka-header-version' href="https://github.com/didi/Logi-KafkaManager/releases" target='_blank'>v2.4.1</a>
<a className='kafka-header-version' href="https://github.com/didi/Logi-KafkaManager/releases" target='_blank'>v2.4.2</a>
{/* 添加版本超链接 */}
</div>
<div className="mid-content">

View File

@@ -16,7 +16,7 @@
</parent>
<properties>
<kafka-manager.revision>2.4.0-SNAPSHOT</kafka-manager.revision>
<kafka-manager.revision>2.4.2-SNAPSHOT</kafka-manager.revision>
<swagger2.version>2.7.0</swagger2.version>
<swagger.version>1.5.13</swagger.version>