Linux Kafka 内存设置实操指南
一 关键内存构成与总体原则
二 调整 JVM 堆内存
if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
export KAFKA_HEAP_OPTS="-Xmx10G -Xms10G"
fi
environment:
KAFKA_HEAP_OPTS: "-Xmx6G -Xms6G"
# 例如 docker-compose mem_limit: 8g
-XX:+UseG1GC
-XX:MaxGCPauseMillis=20
-XX:InitiatingHeapOccupancyPercent=35
-XX:G1HeapRegionSize=16M
-XX:MetaspaceSize=96m
-XX:MinMetaspaceFreeRatio=50
-XX:MaxMetaspaceFreeRatio=80
以上有助于控制 GC 停顿并提升吞吐稳定性。三 与内存相关的关键 Broker 参数
四 系统层面的配合与验证
# /etc/security/limits.conf
kafka soft nofile 65536
kafka hard nofile 65536
# /etc/sysctl.conf
vm.max_map_count=262144
# 执行 sysctl -p 使配置生效
五 快速配置示例