搜索
查看: 1639|: 0

Hadoop集群部署模型纵览

[复制链接]

152

主题

47

回帖

2991

积分

管理员

积分
2991
发表于 2013-10-30 00:01:07 | 显示全部楼层 |阅读模式
       VSphere Big Data Extensions(简称BDE)支持多种部署方式来构建Hadoop集群。按:
  存储/计算绑定模型:将存储节点(Data Node)和计算节点(Task Tracker)部署在相同的虚拟机中。这是最直接简单的部署模型,可以用于概念验证和承载小规模集群的数据处理任务。
  单一计算模型:只部署计算节点(Job Tracker和Task Tracker)的集群类型。
  存储/计算分离模型:将存储节点(Data Node)和计算节点(Task Tracker)部署在不同的虚拟机中,并且根据特定的业务需求,通过相应的分布算法决定集群在vSphereESX物理主机上的拓扑结构。
  自定制集群:用户可以根据具体的业务需求,自定制集群的部署结构、资源模型和配置参数。
  本文我们将着重介绍前2个部署模型,即存储/计算绑定模型和单一计算模型。
  存储和计算节点绑定模型(Data-Compute Combined Deployment)
  通常情况下,我们为了保证Hadoop集群数据本地化(Data Locality)的需要,会将存储(DataNode)和计算(TaskTracker)服务部署在相同节点上。Big Data Extensions也提供这样的部署模式。
  你可以使用BDE的命令行工具,通过运行cluster create –name cluster_name命令创建一个基本的默认Hadoop集群。
  这类集群将包含一个主节点(master),运行Apache Hadoop 1.2.1(BDE 1.0内置的默认Hadoop发行版)的NameNode和JobTracker;三个工作节点(worker),运行DataNode和TaskTracker;一个客户端节点(Clientnode),运行Hadoop客户端,Pig和Hive等。
  这里将DataNode和TaskTracker搭建在同一个虚拟机节点内部,这就是存储和计算节点绑定模型。
  单一计算节点模型(Compute-OnlyDeployment)
  如果你的生产或开发环境里已经有了HDFS,并且有数以TB的分析型数据存在于其中,商业分析团队根据新的业务需求,开发新功能去挖掘新的模式,这时您可以搭建一个单一计算节点集群(Compute-OnlyCluster)。
  单一计算节点集群指的是只部署MapReduce服务,包括Jobtracker和Tasktracker,并且链接到某个已经存在的HDFS上。这样做的好处有很多,首先可以避免搭建完整集群后的大规模数据拷贝或迁移,减少开发环境的等待时间,可以立即部署立即使用,非常适合临时性的开发测试环境;其次,也可以在不同的计算集群之间做到性能隔离,安全性隔离和故障隔离;另外,在兼容性满足的情况下,您也可以使用第三方的商业版HDFS如Isilon等等。
  对于单一计算节点集群,您也可以使用动态伸缩功能(Auto-Elasiticity)来动态地调配您的资源。
  下面列举了这种集群部署的实例定义文件,您可以使用它创建Compute-OnlyCluster。externalHDFS字段定义了要使用的已存在的HDFS服务。请将hadoop_jobtracker角色赋给master节点组,将hadoop_tasktracker角色赋给worker节点组。对于externalHDFS所指定的HDFS集群,默认情况下请设置port_num为8020。对于Hadoop2.0集群,例如CDH4或是PivotalHD等,默认情况下请设置port_num为9000。在集群定义文件中,ExternalHDFS字段和hadoop_namenode,hadoop_datanode角色不能同时存在,否则可能会导致集群创建失败或创建的集群无法正常运行。
  {
  “externalHDFS”: “hdfs://<hostname-of-namenode>:<port_num>”,
  “nodeGroups”: [
  {
  "name": "master",
  "roles": [
  "hadoop_jobtracker"
  ],
  “instanceNum”: 1,
  “cpuNum”: 2,
  “memCapacityMB”: 7500,
  },
  {
  “name”: “worker”,
  “roles”: [
  "hadoop_tasktracker",
  ],
  “instanceNum”: 4,
  “cpuNum”: 2,
  “memCapacityMB”: 7500,
  “storage”: {
  “type”: “LOCAL”,
  “sizeGB”: 20
  },
  },
  {
  “name”: “client”,
  “roles”: [
  "hadoop_client",
  "hive",
  "pig"
  ],
  “instanceNum”: 1,
  “cpuNum”: 1,
  “storage”: {
  “type”: “LOCAL”,
  “sizeGB”: 50
  },
  }
  ]
  }
大数据中国(http://www.bigdatas.cn),以数据的力量改变生活!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

大数据中国微信

QQ   

版权所有: Discuz! © 2001-2013 大数据.

GMT+8, 2024-11-15 16:25 , Processed in 0.064286 second(s), 28 queries .

快速回复 返回顶部 返回列表