faq.md 8.2 KB
Newer Older
Z
zengqiao 已提交
1 2 3 4 5 6 7 8 9

---

![kafka-manager-logo](../assets/images/common/logo_name.png)

**一站式`Apache Kafka`集群指标监控与运维管控平台**

--- 

Z
add qa  
zengqiao 已提交
10
# FAQ
Z
zengqiao 已提交
11

12
- 0、支持哪些Kafka版本?
E
EricZeng 已提交
13
- 1、Topic申请、新建监控告警等操作时没有可选择的集群?
Z
zengqiao 已提交
14 15 16 17
- 2、逻辑集群 & Region的用途?
- 3、登录失败?
- 4、页面流量信息等无数据?
- 5、如何对接夜莺的监控告警功能?
Z
zengqiao 已提交
18
- 6、如何使用`MySQL 8`
Z
zengqiao 已提交
19
- 7、`Jmx`连接失败如何解决?
20
- 8、`topic biz data not exist`错误及处理方式
Z
ZHAOYINRUI 已提交
21
- 9、进程启动后,如何查看API文档
Z
add qa  
zengqiao 已提交
22
- 10、如何创建告警组?
23
- 11、连接信息、耗时信息、磁盘信息为什么没有数据?
Z
add qa  
zengqiao 已提交
24
- 12、逻辑集群申请审批通过之后为什么看不到逻辑集群?
H
HuYueeer 已提交
25
- 13、heartbeat表关联业务和使用场景是什么?
26
- 14、集群的删除,是否会真正的删除集群?
Z
zengqiao 已提交
27
- 15、APP(应用)如何被使用起来?
28
- 16、为什么下线应用提示operation forbidden?
29
- 17、删除Topic成功,为什么过一会儿之后又出现了?
30

31 32
---

33
### 0、支持哪些Kafka版本?
34

35
基本上只要所使用的Kafka还依赖于Zookeeper,那么该版本的主要功能基本上应该就是支持的。
Z
zengqiao 已提交
36 37 38

---

E
EricZeng 已提交
39
### 1、Topic申请、新建监控告警等操作时没有可选择的集群?
Z
zengqiao 已提交
40

E
EricZeng 已提交
41 42 43 44
缺少逻辑集群导致的,在Topic管理、监控告警、集群管理这三个Tab下面都是普通用户视角,普通用户看到的集群都是逻辑集群,因此在这三个Tab下进行操作时,都需要有逻辑集群。

逻辑集群的创建参看:

E
EricZeng 已提交
45
- [kafka-manager 接入集群](add_cluster/add_cluster.md) 手册,这里的Region和逻辑集群都必须添加。
Z
zengqiao 已提交
46 47 48 49 50 51 52 53

---

### 2、逻辑集群 & Region的用途?

主要用途是进行大集群的管理 & 集群细节的屏蔽。

- 逻辑集群:通过逻辑集群概念,将集群Broker按业务进行归类,方便管理;
Z
zengqiao 已提交
54
- Region:通过引入Region,同时Topic按Region纬度创建,减少Broker间的连接;
Z
zengqiao 已提交
55 56 57 58 59 60 61 62 63 64 65 66 67

---

### 3、登录失败?

- 检查使用的MySQL版本,8.0等版本暂不支持,具体版本辛苦查看 README 。

---

### 4、页面流量信息等无数据?

- 1、检查`Broker JMX`是否正确开启。

Z
zengqiao 已提交
68
如若还未开启,具体可百度一下看如何开启,或者参看:[Jmx连接配置&问题解决说明文档](../dev_guide/connect_jmx_failed.md)
Z
zengqiao 已提交
69 70 71 72 73 74 75 76 77

![helpcenter](./assets/faq/jmx_check.jpg)

- 2、`MySQL`的版本是否过高。

建议使用`MySQL 5.7`版本。

- 3、数据库时区问题。

E
EricZeng 已提交
78
检查MySQL的cluster表的gmt_modify字段,做一个update动作,看这个gmt_modify时间是否是当前时间,如果不是,那么就是时区问题了。时区不对问题具体可以搜索一下看如何解决。
Z
zengqiao 已提交
79 80 81 82 83

---

### 5、如何对接夜莺的监控告警功能?

Z
zengqiao 已提交
84
- 参看 [kafka-manager 对接夜莺监控](../dev_guide/monitor_system_integrate_with_n9e.md) 说明。
Z
zengqiao 已提交
85 86 87 88 89 90

---

### 6、如何使用`MySQL 8`?

- 参看 [kafka-manager 使用`MySQL 8`](../dev_guide/use_mysql_8.md) 说明。
Z
zengqiao 已提交
91 92 93 94 95 96

---

### 7、`Jmx`连接失败如何解决?

- 参看 [Jmx连接配置&问题解决](../dev_guide/connect_jmx_failed.md) 说明。
97 98 99 100 101 102 103 104 105 106 107 108 109 110

---

### 8、`topic biz data not exist`错误及处理方式

**错误原因**

在进行权限审批的时候,可能会出现这个错误,出现这个错误的原因是因为Topic相关的业务信息没有在DB中存储,或者更具体的说就是该Topic不属于任何应用导致的,只需要将这些无主的Topic挂在某个应用下面即可。

**解决方式**

可以在`运维管控->集群列表->Topic信息`下面,编辑申请权限的Topic,为Topic选择一个应用即可。

以上仅仅只是针对单个Topic的场景,如果你有非常多的Topic需要进行初始化的,那么此时可以在配置管理中增加一个配置,来定时的对无主的Topic进行同步,具体见:[动态配置管理 - 1、Topic定时同步任务](../dev_guide/dynamic_config_manager.md)
Z
ZHAOYINRUI 已提交
111

112 113
---

Z
ZHAOYINRUI 已提交
114 115
### 9、进程启动后,如何查看API文档

Z
add qa  
zengqiao 已提交
116
- 滴滴Logi-KafkaManager采用Swagger-API工具记录API文档。Swagger-API地址: [http://IP:PORT/swagger-ui.html#/](http://IP:PORT/swagger-ui.html#/)
117 118


Z
add qa  
zengqiao 已提交
119 120
### 10、如何创建告警组?

E
EricZeng 已提交
121
告警组的创建需要到Logi-KM对接的监控系统中创建,比如我们现在默认是对接了夜莺,那么告警组需要到夜莺中创建,如果没有安装夜莺,那么需要安装一下夜莺并进行对接。当然,这里也可以对接自己内部的监控系统,不过需要实现一些接口。
Z
add qa  
zengqiao 已提交
122 123 124

具体的文档可见:[监控功能对接夜莺](../dev_guide/monitor_system_integrate_with_n9e.md)[监控功能对接其他系统](../dev_guide/monitor_system_integrate_with_self.md)

Z
zengqiao 已提交
125 126 127
那么在夜莺中,如何创建告警组呢?
需要前往夜莺平台-用户资源中心-团队管理中新建团队。新建过团队之后再次回到Logi-KM中刷新页面就可以在该下拉框中选择告警接收组了。

128
### 11、连接信息、耗时信息、磁盘信息为什么没有数据?
Z
add qa  
zengqiao 已提交
129 130

这块需要结合滴滴内部的kafka-gateway一同使用才会有数据,滴滴kafka-gateway暂未开源。
131

Z
add qa  
zengqiao 已提交
132
### 12、逻辑集群申请审批通过之后为什么看不到逻辑集群?
133

Z
add qa  
zengqiao 已提交
134
逻辑集群的申请与审批仅仅只是一个工单流程,并不会去实际创建逻辑集群,逻辑集群的创建还需要手动去创建。
135

Z
add qa  
zengqiao 已提交
136
具体的操作可见:[kafka-manager 接入集群](add_cluster/add_cluster.md)
137 138 139 140 141 142 143 144 145 146 147 148 149 150


### 13、heartbeat表关联业务和使用场景是什么?

做任务抢占用的。

KM支持HA的方式部署,那么部署多台的时候,就会出现每一台都可能去做指标收集的事情,这块就使用heartbeat表做KM的存活性判断,然后进行任务的抢占或者是均衡。

更多详细的内容,可以看一下源码中,heartbeat表在哪里被使用了。


### 14、集群的删除,是否会真正的删除集群?

Logi-KM的运维管控,集群列表中的集群删除,仅仅只是将该集群从Logi-KM中进行删除,并不会对真正的物理集群做什么操作。
Z
zengqiao 已提交
151 152 153 154 155 156 157 158 159


### 15、APP(应用)如何被使用起来?

app在Logi-KM中可以近似理解为租户,或者是kafka里面的一个账号的概念。

界面中显示的app信息、权限信息等,在平台层面仅仅只是控制Topic或集群在平台上的可见性,如果使用的是社区版本的Kafka,那么实际上是不能真正的管控到客户端对Topic的生产和消费。

但是如果是使用的滴滴的Kafka-Gateway,那么是可以做到对客户端的生产和消费的权限管控。滴滴的Kafka-Gateway暂未开源,属于企业服务,具体的可以入群交流,群地址在README中。
160 161 162 163 164 165 166 167 168 169 170 171 172 173


### 16、为什么下线应用提示operation forbidden?

**原因一:**

该应用还存在对Topic的权限,因此导致下线失败。具体查看的位置在"Topic管理-》应用管理-》详情",可以看到应用对哪些Topic还有权限。

只有当权限全部去除之后,才可以下线应用。

**原因二:**

使用的是2.4.0之前的旧版本,旧版本存在缓存更新的BUG,建议升级至最新的版本,或者简单粗暴的就是重启一下KM。

174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197

### 17、删除Topic成功,为什么过一会儿之后又出现了?

**原因说明:**

Logi-KM会去请求Topic的endoffset信息,要获取这个信息就需要发送metadata请求,发送metadata请求的时候,如果集群允许自动创建Topic,那么当Topic不存在时,就会自动将该Topic创建出来。


**问题解决:**

因为在Logi-KM上,禁止Kafka客户端内部元信息获取这个动作非常的难做到,因此短时间内这个问题不好从Logi-KM上解决。

当然,对于不存在的Topic,Logi-KM是不会进行元信息请求的,因此也不用担心会莫名其妙的创建一个Topic出来。

但是,另外一点,对于开启允许Topic自动创建的集群,建议是关闭该功能,开启是非常危险的,如果关闭之后,Logi-KM也不会有这个问题。

最后这里举个开启这个配置后,非常危险的代码例子吧:

```java
for (int i= 0; i < 100000; ++i) {
    // 如果是客户端类似这样写的,那么一启动,那么将创建10万个Topic出来,集群元信息瞬间爆炸,controller可能就不可服务了。
    producer.send(new ProducerRecord<String, String>("logi_km" + i,"hello logi_km"));
}
```