深入Hadoop节点部署的策略

每个Hadoop集群都包括不止一个节点。这些节点可以按功能分成几个组,比如master组,worker组,client组等等。每个组里面的节点都有不同的资源要求,比如CPU,内存,存储。

在虚拟数据中心(DataCenter)中有一个或多个虚拟集群(Cluster),每个虚拟集群中有一个或多个主机(Host)。

节点部署是在保证每个节点资源需求的前提下,按照一定策略将Hadoop集群中的所有节点部署到物理主机上。

定义Hadoop集群

Hadoop集群可以通过UI来定义,也可以通过json格式的文件来定义。这里以json文件为例来说明有哪些参数可以使用。

{

"nodeGroups" : [

{

"name": "master",

"roles": [

"hadoop_namenode",

"hadoop_jobtracker"

],

"instanceNum": 1,

"instanceType": "LARGE",

"cpuNum": 2,

"memCapacityMB":4096,

"storage": {

"type": "SHARED",

"sizeGB": 20

},

"haFlag":"on",

"rpNames": [

"rp1"

]

},

上面的文件片段定义了master节点组(第2行“name”),其中包括一个节点(第9行“instanceNum”),每个节点需要2个虚拟CPU(第11行“cpuNum”),4096MB的内存(第12行“memCapacityMB”),20GB共享的存储空间(第13-16行)。

简单的节点部署策略

节点部署的策略有多种,先介绍最简单的一种。因为在一般情况下,Hadoop节点需要占用的磁盘空间是最紧张的资源,所以最基本的节点部署策略是按照磁盘空间的大小来考虑的。首先将所有Hadoop节点按照磁盘空间的要求从大到小进行排序,再将可用的Host按照剩余磁盘空间从大到小进行排序。第一步将磁盘空间需求最大的Hadoop节点部署到剩余磁盘空间最大的主机上去,第二步将磁盘空间需求次大的Hadoop节点部署到剩余磁盘空间次大的主机上去,以此类推。当然,如果后面碰到主机的剩余磁盘空间不够部署某个节点的话,前面拥有较大剩余磁盘空间的主机就会被考虑。这种策略的目的是尽量利用所有可用的主机来部署Hadoop节点,这样每个节点都有更多的资源可供使用。

更多详情见请继续阅读下一页的精彩内容

相关阅读

Hadoop 2.0 安装向导 (0.23.x)

Hadoop 1.2.1 单节点安装(Single Node Setup)步骤

CentOS上安装Hadoop

Ubuntu 12.04安装Hadoop

CentOS 6.3 x86_64安装与配置Hadoop-1.0

Hadoop入门--Hadoop2伪分布式安装

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/27cb21e12f2a34ca06a94d69daa260fb.html