如何限制kafka服务器内存?

问题描述

我想设置Kafka服务器的最大和最小内存值[9092端口]

假设最大值为 2 GB,那么内存使用量不应超过 2 GB,但目前已超过。

我有链接 - https://kafka.apache.org/documentation/#java

来自 Apache 站点的配置

-Xmx6g -xms6g -XX:MetaspaceSize=96m -XX:+UseG1GC
-XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:G1HeapRegionSize=16M
-XX:MinMetaspaceFreeRatio=50 -XX:MaxMetaspaceFreeRatio=80 -XX:+ExplicitGCInvokesConcurrent

但我不知道如何配置它。

我的目标是设置最大内存限制值,Kubernetes Dashboard 中的内存值不应超过最大内存限制值。

注意 - 设置最大内存限制值不应该在 Kubernetes POD 级别,它应该像在启动 zookeeper、Kafka Server 和 kafka 连接时设置值一样。

enter image description here

-Xmx1G -xms256M 证明

enter image description here

解决方法

根据您用于 kafka 的映像,您可以通过环境变量 KAFKA_OPTS 提供这些设置。

您所指的文档为'java' 的调用提供了这些选项。 Kafka、Zookeeper 等是 jars,并通过 java 声明。