如何为Hadoop集群配置合适的硬件

  Hadoop的概念随着大数据时代浪潮的到来,已经变得不那么陌生,在实际应用中,如何为Hadoop集群选择合适的硬件成为很多人开始使用Hadoop的一个关键问题。

  在过去,大数据处理主要是采用标准化的刀片式服务器和存储区域网络(SAN)来满足网格和处理密集型工作负载。然而随着数据量和用户数的大幅增长,基础设施的需求已经发生变化,硬件厂商必须建立创新体系,来满足大数据对包括存储刀片,SAS(串行连接SCSI)开关,外部SATA阵列和更大容量的机架单元的需求。即寻求一种新的方法来存储和处理复杂的数据,Hadoop正是基于这样的目的应运而生的。Hadoop的数据在集群上均衡分布,并通过复制副本来确保数据的可靠性和容错性。因为数据和对数据处理的操作都是分布在服务器上,处理指令就可以直接地发送到存储数据的机器。这样一个集群的每个服务器器上都需要存储和处理数据,因此必须对Hadoop集群的每个节点进行配置,以满足数据存储和处理要求。

  Hadoop框架中最核心的设计是为海量数据提供存储的HDFS和对数据进行计算的MapReduce。MapReduce的作业主要包括从磁盘或从网络读取数据,即IO密集工作,或者是计算数据,即CPU密集工作。Hadoop集群的整体性能取决于CPU、内存、网络以及存储之间的性能平衡。因此运营团队在选择机器配置时要针对不同的工作节点选择合适硬件类型。一个基本的Hadoop集群中的节点主要有:Namenode负责协调集群中的数据存储,DataNode存储被拆分的数据块,Jobtracker协调数据计算任务,最后的节点类型是Secondarynamenode,帮助NameNode收集文件系统运行的状态信息。

  在集群中,大部分的机器设备是作为Datanode和TaskTracker工作的。Datanode/TaskTracker的硬件规格可以采用以下方案:

  4个磁盘驱动器(单盘1-2T),支持JBOD

  2个4核CPU,至少2-2.5GHz

  16-24GB内存

  千兆以太网

  Namenode提供整个HDFS文件系统的namespace管理,块管理等所有服务,因此需要更多的RAM,与集群中的数据块数量相对应,并且需要优化RAM的内存通道带宽,采用双通道或三通道以上内存。硬件规格可以采用以下方案:

  8-12个磁盘驱动器(单盘1-2T)

  2个4核/8核CPU

  16-72GB内存

  千兆/万兆以太网

  Secondarynamenode在小型集群中可以和Namenode共用一台机器,较大的群集可以采用与Namenode相同的硬件。考虑到关键节点的容错性,建议客户购买加固的服务器来运行的Namenodes和Jobtrackers,配有冗余电源和企业级RAID磁盘。最好是有一个备用机,当 namenode或jobtracker 其中之一突然发生故障时可以替代使用。

  目前市场上的硬件平台满足Datanode/TaskTracker节点配置需求的很多,,据了解深耕网络安全硬件平台多年的立华科技瞄准了Hadoop的发展前景,适时推出了专门针对NameNode的设备----双路至强处理器搭载12块硬盘的FX-3411,将计算与存储完美融合,四通道内存的最大容量可达到256GB,完全满足NameNode对于一个大的内存模型和沉重的参考数据缓存组合的需求。

  同时在网络方面,FX-3411支持的2个PCI-E*8的网络扩展,网络吞吐达到80Gbps,更是远远满足节点对千兆以太网或万兆以太网的需求。此外针对Datanode/TaskTracker等节点的配置需求,立华科技不仅推出了可支持单路至强E38核处理器和4块硬盘的标准品FX-3210,还有可以全面客制化的解决方案,以满足客户的不同需求。

  Hadoop集群往往需要运行几十,几百或上千个节点,构建匹配其工作负载的硬件,可以为一个运营团队节省可观的成本,因此,需要精心的策划和慎重的选择。

时间: 2024-10-25 00:35:24

如何为Hadoop集群配置合适的硬件的相关文章

为Hadoop集群选择合适的硬件配置

随着Apache Hadoop的起步,云客户的增多面临的首要问题就是如何为他们新的的Hadoop集群选择合适的硬件. 尽管Hadoop被设计为运行在行业标准的硬件上,提出一个理想的集群配置不想提供硬件规格列表那么简单. 选择硬件,为给定的负载在性能和经济性提供最佳平衡是需要测试和验证其有效性.(比如,IO密集型工作负载的用户将会为每个核心主轴投资更多). 在这个博客帖子中,你将会学到一些工作负载评估的原则和它在硬件选择中起着至关重要的作用.在这个过程中,你也将学到Hadoop管理员应该考虑到各种

如何为Kafka集群选择合适的Partitions数量

如何为Kafka集群选择合适的Partitions数量 Hadoop技术博文 这是许多kafka使用者经常会问到的一个问题.本文的目的是介绍与本问题相关的一些重要决策因素,并提供一些简单的计算公式. 文章目录 1 越多的分区可以提供更高的吞吐量 2 越多的分区需要打开更多地文件句柄 3 更多地分区会导致更高的不可用性 4 越多的分区可能增加端对端的延迟 5 越多的partition意味着需要客户端需要更多的内存 6 总结   越多的分区可以提供更高的吞吐量 首先我们需要明白以下事实:在kafka

在Hadoop集群环境中为MySQL安装配置Sqoop的教程_Mysql

Sqoop是一个用来将Hadoop和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中. Sqoop中一大亮点就是可以通过hadoop的mapreduce把数据从关系型数据库中导入数据到HDFS. 一.安装sqoop1.下载sqoop压缩包,并解压 压缩包分别是:sqoop-1.2.0-CDH3B4.tar.gz,hadoop-0.20.2-CD

怎么为大数据处理构建高性能Hadoop集群

越来越多的企业开始使用Hadoop来对大数据进行处理分析,但Hadoop集群的整体性能却取决于CPU.内存.网络以及存储之间的性能平衡.而在这篇文章中,我们将探讨如何为Hadoop集群构建高性能网络,这是对大数据进行处理分析的关键所在. 关于Hadoop "大数据"是松散的数据集合,海量数据的不断增长迫使企业需要通过一种新的方式去管理.大数据是结构化或非结构化的多种数据类型的大集合.而 Hadoop则是Apache发布的软件架构,用以分析PB级的非结构化数据,并将其转换成其他应用程序可

如何为大数据处理构建高性能Hadoop集群

越来越多的企业开始使用Hadoop来对大数据进行处理分析,但Hadoop集群的整体性能却取决于CPU.内存.网络以及存储之间的性能平衡.而在这篇文章中,我们将探讨如何为Hadoop集群构建高性能网络,这是对大数据进行处理分析的关键所在. 关于Hadoop "大数据"是松散的数据集合,海量数据的不断增长迫使企业需要通过一种新的方式去管理.大数据是结构化或非结构化的多种数据类型的大集合.而Hadoop则是Apache发布的软件架构,用以分析PB级的非结构化数据,并将其转换成其他应用程序可管

《Hadoop集群与安全》一2.1 在Hadoop集群中配置操作系统

2.1 在Hadoop集群中配置操作系统 正如之前所提到的,Hadoop能够运行在几乎所有Linux版本的系统上.本章随后的讲解会将重点放在CentOS 6.x上,CentOS和Red Hat是Hadoop相关产品安装最为普及的平台.要掌握这些步骤并不难,对于Debian系统所有与配置Hadoop组件的步骤都是一致的,因此读者可以根据自身需求替换对应的包管理器. 2.1.1 选择和设置文件系统 现代Linux系统支持多种不同的文件系统:如EXT3.EXT4.XFS.BTRFS,等等.针对特定的工

【Big Data】HADOOP集群的配置(一)

                       Hadoop集群的配置(一) 1.    实验准备 1.1    目的: 在虚拟机环境下,让同学们学会从零开始配置Hadoop-2.2集群,并尝试在真实环境下搭建集群. 1.2    主要内容: 物理机器总共4台,想配置基于物理机的Hadoop集群中包括4个节点: 1 个 Master, 3个 Salve ,节点之间局域网连接,可以相互 ping通.IP的分布如表1所示.             表1        4个节点的IP地址分配及角色 Ma

Hadoop-2.8.0集群搭建、hadoop源码编译和安装、host配置、ssh免密登录、hadoop配置文件中的参数配置参数总结、hadoop集群测试,安装过程中的常见错误

25.集群搭建 25.1 HADOOP集群搭建 25.1.1集群简介 HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起 HDFS集群: 负责海量数据的存储,集群中的角色主要有NameNode / DataNode YARN集群: 负责海量数据运算时的资源调度,集群中的角色主要有 ResourceManager /NodeManager 25.1.2服务器准备 本案例使用虚拟机服务器来搭建HADOOP集群,所用软件及版本: ü Vmware 11.

【Big Data】HADOOP集群的配置(二)

Hadoop集群的配置(二) 2.8 节点之间的免密码通信 1.什么是SSH SSH是Secure Shell的缩写,由IETF的网络工作小组(Network Working Group)所制定:SSH为建立在应用层和传输层基础上的安全协议.SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议.利用SSH协议可以有效防止远程管理过程中的信息泄露问题. 从客户端来看,SSH提供两种级别的安全验证. 第一种级别  基于口令的安全验证 只要知道自己的帐号和口令,就可以登录到远程主机.所有