kafka节点数规划

南墨2年前技术文章852

按磁盘容量规划节点数

Kafka的数据存放在本地磁盘,建议使用SAS盘,提供较高磁盘IO,以提高Kafka吞吐量。在本规划基于的硬件规格下,单节点平均吞吐量参考值为读300MB/s,写150MB/s。

数据输入

  • 数据输入吞吐量

  • 单节点磁盘容量

  • 数据保留时间

  • 数据复本数

  • 单个消费者的峰值

  • 单个生产者的峰值

磁盘实际容量

由于磁盘存在1M = 1024 KB or 1M = 1000KB的算法不同,一般来说,

磁盘实际可用容量 = 磁盘标注容量 * 0.9

举例说明,磁盘标注容量为600G,实际容量=600 * 0.9 = 540G。

数据副本数

副本数直接决定了消息的膨胀率,如:一条写入到topic1中的消息大小是1M,topic1的副本数是3,那么最终存入broker的消息大小就是3M。

分区数要求

Kafka集群中,分区越多吞吐量越高,但是分区过多也存在潜在影响,例如文件句柄增加、不可用性增加

(如:某个节点故障后,部分Partition重选Leader后时间窗口会比较大)及端到端时延增加等。

建议:

单个Partition的磁盘占用最大不超过100GB;单节点上Partition数目不超过3000;整个集群的分区总数不超过10000。


相关文章

Linux】项目自动化构建工具-make/Makefile 详解

Linux】项目自动化构建工具-make/Makefile 详解

 在Linux及类Unix系统中,自动化构建项目是提高开发效率、减少重复劳动的关键环节。make工具及其配置文件Makefile是实现这一目标的重要工具组合。它们通过定义一系列规则和依赖关系,自动执行...

数据库性能大揭秘:玩转MySQL监控指标状态变量

前言在本文中,我们将深入探讨MySQL数据库的性能监控世界。通过了解并应用一系列常用的监控指标,我们能够更精准地把握数据库的运行状况。这些指标,通常以状态变量(status variables)的形式...

MySQL运维实战(2)MySQL用户和权限管理

MySQL用户管理基本命令创建用户使用create user命令创建用户create user 'username'@'host' ide...

Ranger-hdfs插件部署

Ranger-hdfs插件部署

部署在两个namenode节点解压插件cd /opt/hadooptar -xzvf ranger-2.4.0-hdfs-plugin.tar.gz -C /opt/cd /opt/ranger-2....

MySQL运维实战(4.8) SQL_MODE之NO_ENGINE_SUBSTITUTION

开启NO_ENGINE_SUBSTITUTION,建表时如果指定的存储引擎不可用或不存在,SQL报错。否则会使用默认的存储引擎替换。如果不设置NO_ENGINE_SUBSTITUTION,建表时指定的...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。