Kafka配置中的磁盘设置主要涉及硬件选择、文件系统优化及参数调优,具体如下:
硬件选择
文件系统优化
noatime减少元数据写入。deadline或noop,优化I/O调度效率。Kafka关键参数
log.dirs:配置多磁盘路径(逗号分隔),实现数据并行写入,提升吞吐。num.io.threads:设置为CPU核心数的2倍,处理磁盘I/O操作。log.segment.bytes:控制日志段大小(默认1GB),较大的值可减少段文件数量,但可能增加搜索延迟。log.retention.*:通过log.retention.hours(默认168小时,7天)或log.retention.bytes控制数据保留策略,避免磁盘占满。log.flush.interval.*:调整log.flush.interval.messages(默认0,每条消息刷盘)和log.flush.interval.ms(默认1000ms),平衡刷盘频率与吞吐。其他优化
sendfile机制,减少数据拷贝开销。kafka-log-dirs.sh脚本或JMX监控磁盘使用率,设置阈值告警。参考来源: