你好,游客 登录
背景:
阅读新闻

Hadoop集群部署模型纵览

[日期:2013-10-29] 来源:看引擎  作者: [字体: ]
  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
  },
  }
  ]
  }




收藏 推荐 打印 | 录入: | 阅读:
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款