如何为Hadoop集群选择合适的硬件?
比特网 发表于:12年11月12日 09:00 [转载] 比特网
下面是各种不同工作负载的硬件配置清单,包括我们最初的“起点”硬件建议:
· 轻型处理配置(1U/machine):两个四核CPU,8GB内存,4个磁盘驱动器(1TB或2TB)。注意CPU密集型的工作,如自然语言处理,在数据处理之前加载大型模型到RAM的,应配置2GB内存每CPU核,而不是1GB内存每CPU核。
· 平衡计算配置(1U/machine):两个四核CPU,16到24GB内存,4个磁盘驱动器直连主板控制器(1TB或2TB)。这些往往在一个单一的2U机柜有两个主板和8个驱动器的。
· 重存储配置(2U/machine):两个四核CPU,16到24GB的内存,12个磁盘驱动器(1TB或2TB)。这种类型机器的功耗,闲置状态200W左右,高活跃时350W。
· 计算密集配置(2U/machine):两个四核CPU,48-72GB的内存,8个磁盘驱动器(1TB或2TB)。这些往往在大内存驻留模型和大量索引数据缓存组合时经常使用。
其他硬件方面的考虑
当我们遇到应用程序产生大量的中间数据,我们建议每台机器拥有一个双端口以太网卡或双通道以太网卡提供2Gbps。对于那些已经转移到10千兆以太 网或Infiniband的客户,这些解决方案可以用来解决网络密集型工作负载。如果你在考虑切换到10千兆以太网,要先确定你的操作系统和BIOS是兼 容的。
当计算内存需求,Java管理虚拟机占用到10%的因素。我们建议配置Hadoop,使用严格的堆大小限制,以避免内存交换到磁盘。交换大大影响MapReduce作业性能,可以加大RAM配置以避免这种情况。
同样重要的是优化RAM的内存通道带宽。例如,当使用双通道内存,每台机器应该配置DIMM组。对于三通道内存,每台机器应该配置三组DIMM。这意味着一台机器可能配置18GBs(9x2GB)内存,而不是16GBs(4x4GB)。
结论
采购合适的Hadoop集群硬件需要基准和精心策划,充分理解工作负载。然而,Hadoop集群通常是异构环境,我们建议起步时采用平衡配置方案来部署初始硬件。
