OpenStack Sahara如何构建Hadoop和Spark系统

日期:2016-12-7作者:Walker Rowe翻译:皮红 来源:TechTarget中国 英文

【TechTarget中国原创】

OpenStack Sahara是个命令行工具,通过简化流程,跟踪复杂的细节,使Hadoop和 Spark的安装、部署变得更加简单。

OpenStack是一种云操作系统,用于提供虚拟机,而OpenStack Sahara是一个附加组件,使管理员能够在这些虚拟机上部署Spark和Hadoop。换句话说,你可以将OpenStack Sahara作为一个中心点,构建Hadoop和Spark分布架构,做大数据分析。

Sahara本身提供的插件,可以用于不同供应商分配的Hadoop和Spark:

Vanilla: Apache Hadoop;

Ambari: Hortonworks Hadoop;

Spark: Apache Spark with Cloudera HDFS、Apache Spark with Cloudera Hadoop等

MapR:MapR plugin和 MapR File System等, Hadoop和Spark 准前端

Cloudera:Cloudera Hadoop分布式

从技术层面讲,不需要使用Hadoop来运行Spark,但是,由于Spark被分配存储在一个分布式架构中,因此,使用Hadoop来运行Spark,是最佳的选择。另外,Spark自身没有存储机制。

在架构中,Sahara 运行在OpenStack控制器节点上,而Hadoop集群运行在OpenStack计算节点上。

当然,还有其他的方法来部署Hadoop,比如说使用Docker containers,或者,还可以将Hadoop手动安装在虚拟或物理机器上。例如通过Ansible或者Puppet工具,使得这一切变得更加简单化。还有很多供应商以及供应商辅助工具可供选择,如Cloudera和MapR。另外,可以在不同云供应商的云中运行Hadoop。

使用OpenStack Sahara提供了一个中心点,可以部署并启动Hadoop,给每个VM分配一个Hadoop角色。作为一个开源的产品—一个不依赖于任何供应商的产品—能够获得OpenStack贡献者的支持,例如RedHat、Ubuntu、Suse、惠普、Workday、SAP、英特尔等等。

开始

可以在一台机器上安装OpenStack,但是,在做任何承诺之前,需要对其进行测试。有几种测试的方法。可以使用RHEL或CentOS的Packstack ,也叫RDO。或者可以使用DevStack Fedora、Ubuntu和CentOS。还可以使用Ubuntu 的Mirantis Fuel。

第一步是将虚拟机镜像上传到OpenStack Glance。可以使用Horizon仪表板或者Glance命令行。对于虚拟机,需要一个具有可用cloud-init的图像。Cloud-init便于部署到云,通过生成Secure Shell键,设置默认的定位和设置主机名。

使用Sahara

通过其他OpenStack组件,可以使用命令行界面,或者可以使用Horizon仪表板。仪表板显然更加容易。无论使用哪种方式,都需要安装Sahara。这是一个漫长的过程,OpenStack在其网站上提供了这样做的详尽说明。

部署Hadoop的基本步骤,首先是配置及部署VM,之后,才能确定每个VM提供哪种Hadoop角色。如下:

  • Namenode: Hadoop分布式文件系统(HDFS)的存储细节,运行JobTracker
  • Datanode: 运行工作的HDFS一部分
  • 二级节点名称:作为名称节点备份,以防名称节点出现异常
  • Oozie:工作流调度程序
  • 资源管理器:使用Apache、Yarn或者Mesos 分配资源—内存和CPU
  • 节点管理器:定位每个服务器的角色—节点—Hadoop系统中

工作历史服务器:密切关注MapReduce和其他工作的执行情况,并且,在必要时,进行重新安排。

继续使用OpenStack Sahara部署Hadoop,上传一个VM映像,例如带cloud-init的Ubuntu。接下来,使用Safari注册一个图像,将你使用的插件添加匹配的标签,例如Vanilla。向Horizon添加Sahara时,可以使用仪表板。VM模板、节点组模板具有相同的RAM和CPU特点,例如,m1.medium。最后,将节点组模板与集群模板相结合。

一旦完成这些步骤,在Horizon创建实例,设置主从Hadoop节点。然后,启动集群—实例。可以创建一个Hadoop job。可以是Spark、Pig、Java、MapReduce等等。然后,启动集群工作。最后,输出结果到Cinder或者其他存储。

Spark、Hadoop和Sahara

OpenStack Sahara并不是Hadoop或者Spark的增强版。相反,你可以把OpenStack Sahara看作一个图形或者命令行工具,使用OpenStack Sahara,建立一个分布式Hadoop或者Spark系统,变得更加简单。OpenStack Sahara不仅有助于安装这些系统;OpenStack Sahara还能跟踪服务器的服务功能。因此,通过屏幕,可以看到整个布局。

没有OpenStack Sahara的话,安装Spark或者Hadoop存在的最大困难是,你需要手动安装虚拟机。借助于OpenStack Sahara,可以跳过这一步,然后,你可以在上面安装Hadoop和 Spark。

OpenStack Sahara使你能够为每个服务器分配一个角色,因此,你要知道哪些服务器是用来存储数据的,哪些服务器是用来收集数据的,哪些服务器是用来协调所有活动的。一旦这一切已经敲定,当你需要规模扩展的时候,你可以重复这个过程。这是因为,你可以将你的想法另存为模板,就像OpenStack将不同的VM配置保存为模板。

OpenStack Sahara也能够帮助你跟踪其他复杂的细节,并且将这些复杂的细节纳入决策。例如,Hadoop背后的指导原则是,Hadoop使得每一块冗余数据分为三份。因此,把所有数据放置在同一台机器上、电源或者架子上,毫无意义。Sahara能起到很大的作用,因为Sahara本身就知道数据中心架配置,为了提高性能,可以将数据集中,为了避免冗余的话,也可以将数据分开。

综上所述,对那些已经使用OpenStack的用户来说,Sahara使得安装Hadoop和Spark变得更加容易。当然,你也可以使用Puppet、Ansible或者Docker,但是,这些都不是云的操作系统。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

评论
查看更多评论

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

作者>更多

Walker Rowe
Walker Rowe

资深IT从业人员

开源虚拟化>更多

  • 主流hypervisor总拥有成本及功能对比

    在众多hypervisor中做出选择可能是管理员要做出的最重要的决定之一。在做出上述决定时,务必牢记要在已经推出市场一段时间的hypervisor中进行选择。

  • 从OpenStack Ocata看容器技术的走势

    然而2017年2月,OpenStack社区却突然发布了OpenStack的第15个版本Ocata。这一版本的发布,与上一版本的发布时间间隔只有四个月。

  • 预测潜风险:加强容器保护

    容器是IT行业最热门的软件话题。共享虚拟机通用部分——操作系统、管理工具乃至应用,大大减少了镜像消耗的内存资源,同时减少了加载相同代码的众多副本所需占用的网络带宽。

  • 如何搭建OpenStack云计算平台

    对于开源云计算市场来说,OpenStack是当时无愧的领导者——虽然其仍然存在很多需要完善的地方,下面的五点建议可以帮助管理员更好地理解OpenStack。

相关推荐

技术手册>更多

  • 在Mac上玩转VMware Fusion

    在同个机器上运行不同操作系统非常酷。对于一部分人来说,这个功能是必需的。对于用于Mac的VMware Fusion,用户可以在Mac OS X里运行多个操作系统。

  • 如何应对虚拟机蔓延?

    虚拟机易于创建,反应速度快,所消耗的硬件资源也非常有限,这必然会导致虚拟机的蔓延。该如何解决呢?本期虚拟化技术手册从虚拟机蔓延的原因入手,介绍能阻止虚拟机蔓延的部署方法与工具,并且从宏观方面描述高可用性架构与虚拟机蔓延之间的紧密关系。

  • VirtualBox中文技术手册

    由于在2010年收购了Sun公司,甲骨文获得了VirtualBox平台。虽然Oracle VirtualBox常用于桌面虚拟化部署,但也适合虚拟服务器环境。在本期TT虚拟化技术手册中,我们将介绍VirtualBox快照、VirtualBox在虚拟化平台、P2V迁移设备方面提供的信息,还会介绍设置USB设备的过程。

  • 特刊:VMworld 2011——Own It Your Cloud

    在过去的几年,虚拟化风靡IT,从一种节省资金的技术发展成企业的核心战略,从只敢用于测试开发变成支撑企业关键应用的成熟技术,下一个阶段是什么?“看来我们不得不经常用到‘云’这个字眼了。”VMware CEO Paul Moritz在VMworld 2011主题演讲中这样说道。

TechTarget

最新资源
  • 存储
  • CIO
  • 网络
  • 服务器
  • 数据中心
  • 云计算