设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客

OpenStack大数据项目Sahara概述

2014-4-17 11:46| 发布者: joejoe0332| 查看: 8865| 评论: 0|原作者: 章宇|来自: InfoQ

摘要:   2013年4月,OpenStack社区知名厂商Mirantis正式宣布了基于OpenStack的开源BDaaS(BigData-as-a-Service)项目——Sahara(原名Savanna),正式开始了在OpenStack上构建大数据服务能力的努力。  近日,开源技术 ...


  接下来,章宇开始从研究代码的层面介绍Sahara的设计与实现。Sahara的设计有两大特点:


  1、模块化、可配置:

Sahara中的大量功能和机制,都基于可选择、可配置的模块化插件实现,例如:可以通过对engine的配置来选择不同的Hadoop集群编配引擎,通过对plugin的配置来选择不同的Hadoop发行版安装与部署方式和工具,等等。


  2、代码重用:

Sahara也尽可能重用了OpenStack自身提供的IaaS层组件及其服务,例如:利用Nova提供虚拟机资源,利用Horizon提供人机界面,等等。


  Sahara对Horizon(界面)、Glance(镜像管理)、Keystone(身份认证)、Heat(集群配置)、Ceilometer(监控)、Nova(虚拟机管理)、Neutron(网络)、Cinder(块存储)和Swift(对象存储)都有不同程度的代码复用,其中Nova、Glance和Keystone是必要组件,其他组件可选用。


  Sahara的整体架构可参考其架构图。其中,章宇建议:

在分析集群创建流程时,主要应关注sahara.api、sahara.service.api、sahara.service.engine和sahara.plugins这四个package的各自行为及相互关系。其中,sahara.service.api中的_provision_cluster()驱动了整个cluster创建的过程。


  接下来,章宇从产品和技术的层面将Sahara与EMR、Serengeti进行了对比,要点如下:

  • EMR在Sahara基本模式的基础上融合了EDP模式的特点
  • EDP的用户只需要指定“哪些数据”、“哪个集群”、“哪个程序包”这三要素,而完全不用关心集群如何创建、如何管理这样的与自己核心业务诉求无关的问题
  • EMR的用户则除了需要在创建集群时指定大量信息外,还需要负责集群和业务的运行管理
  • 比较而言,EDP的用户是纯粹的大数据业务应用者,而EMR的用户则身兼业务应用和系统运维两种职责
  • 基于EMR的大数据解决方案,全面涵盖了数据的存储、计算、分析、共享等各个处理环节,这是Sahara还难以企及的
  • Sahara和Serengeti的区别,可以说是“应用云化”和“应用虚拟化”的区别。Serengeti项目的主要关注点在于如何为搭建在虚拟机环境下的Hadoop集群提高性能和可靠性,这里面的思考是Sahara可以借鉴的


  介绍到这里,章宇对Sahara目前的状态进行了概述,认为目前的Sahara还面临以下几点挑战:

  • Sahara的管理平面性能存在疑问,创建和发布集群的等待时间有待测试
  • 复杂管理的成功率方面,目前Sahara中没有看到明确的处理机制,这是一个缺失
  • Sahara搭建的Hadoop在虚拟化环境下的性能有待优化,不过这个问题可以等到前面两个关键问题解决了之后再来优化
  • Auto-scaling的缺失。目前Sahara要扩展需要人工执行
  • Sahara最大的亮点在EDP,其价值有待进一步挖掘

酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部