Add km module kafka

This commit is contained in:
leewei
2023-02-14 14:57:39 +08:00
parent 229140f067
commit 469baad65b
4310 changed files with 736354 additions and 46204 deletions

View File

@@ -0,0 +1,51 @@
# `Logi-Kafka` 云平台-简介
[TOC]
## 1、产品架构
![产品架构](https://img-ys011.didistatic.com/static/dicloudpub/do1_xgDHNDLj2ChKxctSuf72)
- 资源层:`Logi-Kafka` 云平台最底层是资源层是MySQL、Zookeeper及一些容器和物理机
- 引擎层:资源层之上是引擎层,这块主要是在社区`Kafka`基础上增加了磁盘过载保护、指标埋点等40+优化改进后的`Kafka`消息队列服务;
- 网关层引擎层再之上是网关层网关层主要是对Kafka-Topic的消费与发送进行权限管控、流量管控。以及还有客户端接入时的服务发现和降级等功能
- 服务层网关层再往上是服务层基于滴滴内部Kafka平台的服务的经验沉淀服务层具备Topic管理、集群管理等一套比较完善的监控及管控服务能力
- 平台层:最顶层是平台层,基于服务层的能力及用户角色权限的管控,平台层面向不同用户分别展示了用户控制台、运维控制台及一些开放的接口。
## 2、模块功能
![模块交互](./assets/kafka_cloud_arch.jpg)
- Kafka集群(`Kafka-Brokers`):在`Apache-Kafka`的基础上增加磁盘过载保护、指标体系细化及性能优化等特性后的Kafka。
 
- Kafka网关(`Kafka-Gateway`)滴滴自研的具备服务发现、流量控制、服务降级及安全管控等能力的Kafka集群网关。备注部分网关的能力被嵌入于`Kafka-Broker`中。
 
- Kafka管控平台(`Kafka-Manager`):滴滴自研的面向`Kafka`的普通用户、研发人员及运维人员的一站式`Kafka`集群监控 & 运维管控平台。
 
介绍完云平台整体架构之后,我们再来大致介绍一下各模块的功能及他们之间的交互。
- Kafka集群(`Kafka-Brokers`)
1、承接`Kafka`客户端的发送及消费请求并进行处理。
**2、`Kafka`网关中的流控和安全的能力嵌入于其中。**
3、从`Kafka-Manager`定时同步权限和用户信息。
4、将`Topic`的连接信息`POST``Kafka-Manager`
5、Kafka网关服务发现模块会到`Kafka`集群同步元信息。
6、强依赖于`Zookeeper`
 
- Kafka网关(`Kafka-Gateway`) 之 服务发现
1、`Kafka`统一对外的服务地址。
2、`Kafka`客户端启动时,会首先请求服务发现,从而获取`Topic`的元信息。
3、从`Kafka-Manager`定时同步各个集群的实际服务地址和流控降级信息。
 
- Kafka管控平台(`Kafka-Manager`)
1、用户管控平台。
2、服务发现和`Kafka`集群会定期进行集群实际服务地址、用户信息及权限信息进行同步。
3、从`Kafka`集群中获取集群元信息及指标信息。
## 3、总结
本节概要介绍了一下滴滴`Logi-Kafka`云平台产品的整体架构 以及 相关模块的大体功能及之间的相互交互关系。