Memory 关于卡夫卡的内存消耗

Memory 关于卡夫卡的内存消耗,memory,kubernetes,apache-kafka,Memory,Kubernetes,Apache Kafka,我们正在查询卡夫卡横向扩展的内存消耗情况。如果您能为下面的查询提供建议/解决方案,将非常有帮助。 我们在kubernetes上运行kafka作为docker容器 为Kafka broker POD配置了4GiB的内存限制。卡夫卡代理吊舱的内存达到了4GiB。所以我们决定手动将Kafka broker POD副本从1扩展到3。但在扩展之后,对于相同的负载,每个Kafka代理吊舱都在消耗4GiB内存。我们预计Kafka broker POD的内存消耗为~1.33GiB,因为我们在相同的负载量下运行3

我们正在查询卡夫卡横向扩展的内存消耗情况。如果您能为下面的查询提供建议/解决方案,将非常有帮助。 我们在kubernetes上运行kafka作为docker容器

为Kafka broker POD配置了4GiB的内存限制。卡夫卡代理吊舱的内存达到了4GiB。所以我们决定手动将Kafka broker POD副本从1扩展到3。但在扩展之后,对于相同的负载,每个Kafka代理吊舱都在消耗4GiB内存。我们预计Kafka broker POD的内存消耗为~1.33GiB,因为我们在相同的负载量下运行3个POD

在卡夫卡经纪人扩大规模之前: 1经纪人 6个主题,每个主题有1个分区 内存消耗:4GiB

在卡夫卡经纪人扩大规模并重新平衡所有经纪人的话题后: 3经纪人 6个主题,每个主题有1个分区 内存消耗:10Gb(Pod1:2GiB、Pod2:4GiB、Pod3:4GiB)

在卡夫卡经纪人扩大规模并重新平衡所有经纪人的话题后: 3经纪人 6个主题,每个主题有3个分区 内存消耗:12GiB(Pod1:4GiB、Pod2:4GiB、Pod3:4GiB)

所有部署都使用相同的负载量进行测试。所有主题的复制系数均为1

编辑1


您如何衡量内存使用情况?您是否可以显示JVM使用情况图,而不仅仅是单个数字?您甚至为卡夫卡进程的堆大小设置了什么?我们可以看到您的卡夫卡
DockerFile
?我们正在使用Prometheus测量卡夫卡代理内存。下面是Kafka的配置映射中设置的Java堆选项。kafka.heap.opts:-Xmx2048m-Xms512m