Kafka技巧篇
Kafka集群参数调忧
JVM参数调忧
1 | 默认启动的Broker进程只会使用1G内存,在实际使用中会导致进程频繁GC,影响Kafka集群的性能和稳 |
1 | YGC:young gc发生的次数 |
1 | [root@bigdata01 kafka_2.12-2.4.1]# jps |

1 | 如果你发现YGC很频繁,或者FGC很频繁,就说明内存分配的少了 |
1 | export KAFKA_HEAP_OPTS="-Xmx10g -Xms10g -XX:MetaspaceSize=96m -XX:+UseG1GC -XX |
1 | 这个配置表示给kafka分配了10G内存 |
Replication参数调忧
1 | replica.socket.timeout.ms=60000 |
Log参数调优
1 | 这块是针对Kafka中数据文件的删除时机进行设置,不是对kafka本身的日志参数配置 |
Kafka Topic命名小技巧
1 | 针对Kafka中Topic命名的小技巧 |
Kafka集群监控管理工具
1 | 现在我们操作Kafka都是在命令行界面中通过脚本操作的,后面需要传很多参数,用起来还是比较麻烦的,那kafka没有提供web界面的支持吗? |
下载CMAK




1 | 注意:由于cmak-3.0.0.4.zip版本是在java11这个版本下编译的,所以在运行的时候也需要使用java11这个版本,我们目前服务器上使用的是java8这个版本 |
1 | 我们为什么不使用java11版本呢?因为自2019年1月1日1起,java8之后的更新版本在商业用途的时候就需要收费授权了。 |
1 | [root@bigdata01 soft]# tar -zxvf jdk-11.0.7_linux-x64_bin.tar.gz |
1 | 接下来把 cmak-3.0.0.4.zip 上传到bigdata01的/data/soft目录下 |
1 | 注意:如果提示-bash: unzip: command not found,则说明目前不支持unzip命令,可以使用yum在线安装 |
1 | [root@bigdata01 soft]# yum clean all |
1 | 再重新解压 |
配置CMAK
1 | 2:修改CMAK配置 |
1 | 然后修改conf目录下的application.conf文件 |
1 | 3:修改kafka启动配置 |
1 | 重新启动kafka集群,指定JXM_PORT |
启动CMAK
1 | 4:启动cmak |
访问CMAK
1 | 5:访问cmak |

1 | 6:操作CMAK |


1 | 这几个参数配置好了以后还需要配置以下几个线程池相关的参数,这几个参数默认值是1,在保存的时候会提示需要大于1,所以可以都改为10 |
1 | brokerViewThreadPoolSize:10 |
1 | 最后进来是这样的 |

查看kafak集群的所有broker信息

查看kafak集群的所有topic信息



1 | 点击topic的消费者信息是可以进来查看的 |

创建一个topic

给topic增加分区

1 | 这是CMAK中常见的功能,当然了这里面还要一些我们没有说到的功能就留给大家以后来发掘了。 |