Kafka学习笔记(三)Kafka基础设施评估及服务器端配置
Kafka基础设施评估
操作系统
优先用Linux。
磁盘选型
建议用机械磁盘,原因是性价比高。顺序读写操作一定程度上规避了随机读写操作慢的问题,同时缩小了与SSD的性能差距。
另外,集群情况下,可不做raid。
磁盘容量规划方法
5个参考维度:增量消息数、消息留存时间、平均消息大小、备份数、是否启用压缩。
估算公式:
增量消息数 * 平均消息大小 * 备份数 * (100% + 其他数据空间占比) * 消息留存时间 / 压缩比
其他数据空间占比:比如索引数据等,参考值: 10%。
带宽规划方法
以单机带宽1Gb为例:
1Gb实际单机估算只能使用大约 700Mb 的带宽资源。因为,超过 70% 的阈值就有网络丢包的可能性。
需要给传输峰值和Follower Replica同步预留带宽。经验预留2/3的带宽,所以1Gb实际单机估算只能使用大约 240Mbps 的带宽资源。
如果需求是1TB/h业务数据传输需求(这边1TB指包含输入和输出两组IO,不是单纯的写入),参考计算:
1(TB) * 1000 * 1000(TB to MB) * 8(B to b) / 240(Mbps) / 3600 (Hour to Sec) = 9.26
所以,单机带宽1Gb场景下,约等于10台服务器需求。也就是说,1TB/h业务数据传输据以上经验评估需要10台服务器。
Kafka服务器端重要配置
静态配置(server.properties)
静态配置指的Kafka服务器端的启动配置。
存储信息相关
【推荐】log.dirs
功能:指定了 Broker 需要使用的若干个文件目录路径。
建议配置方法:多路径逗号分隔,建议配置多个不同物理磁盘的路径,可以提升读写性能:比起单块磁盘,多块物理磁盘同时读写数据有更高的吞
文章评论