|
|
51CTO旗下网站
|
|
移动端

【WOT2018】李明宇:在OpenStack云上运行大数据系统的难题与方法

在5月19日上午举行的“OpenStack创新实战”分论坛中,OStorage (奥思数据)创始人兼CTO李明宇将为大家带来题为《在OpenStack云上提供大数据服务:问题、方法与实践》的精彩演讲。会前,51CTO记者有幸采访了他,提前剧透下将要分享的重点内容。

作者:杜美洁来源:51CTO.com|2018-05-16 15:57

【51CTO.com原创稿件】七年一剑,华丽蜕变。自2012年起连续6年15场峰会,凝聚大量技术专家,博观而约取,厚积而薄发。2018 WOT全球软件与运维技术峰会扬帆起航,围绕12大核心热点,汇聚海内外60位一线专家,打造高端技术盛宴!

在5月19日上午举行的“OpenStack创新实战”分论坛中,OStorage (奥思数据)创始人兼CTO李明宇将为大家带来题为《在OpenStack云上提供大数据服务:问题、方法与实践》的精彩演讲。会前,51CTO记者有幸采访了他,提前剧透下将要分享的重点内容。

OStorage (奥思数据)创始人兼CTO/OpenStack社区布道师与贡献者

OStorage (奥思数据)创始人兼CTO/OpenStack社区布道师与贡献者

李明宇是何许人也?在WOT峰会上,他将分享什么?

李明宇是OStorage创始人兼CTO,也是OpenStack社区布道师与贡献者。在创立OStorage前,曾在中科院担任课题组负责人,将云计算、分布式存储等技术成功应用在船舶、航天、国防等领域国家大型工程项目中。近年来,他积极研究和传播OpenStack相关的云计算和云存储技术,多次在OpenStack Summit等国内外大型会议上发表技术演讲。

在本届WOT峰会上,李明宇将结合Hadoop和Spark,包括Hive等SQL方案,讲解在大数据系统云化实践中可能会遇到的问题及解决方法。他还透露:“在分享中,我们将给参与互动的观众赠送我们翻译并由电子工业出版社出版的《对象存储:OpenStack Swift应用、管理与开发》一书。”

他表示,之所以最终选定这个主题,是因为:虽然基于OpenStack的云环境部署量越来越多,但是很多OpenStack云环境并不提供大数据服务,比如类似AWS的Elastic MapReduce,再比如面向大数据的SQL,支持OLAP等等。另外,随着用户业务逐步实现了云迁移,在云上部署大数据系统的需求已经日益常见和迫切。

然而,由于大数据系统的特殊性,如果在云平台上开一批虚机,然后像在物理机上做安装部署那样直接在这些虚机上部署运行Hadoop等大数据系统,往往在性能、可靠性等各方面达不到预期。

但是,这并不能归咎于虚拟化或者云平台,而是需要采用正确的方法,这些问题都能够迎刃而解,而且方法得当还能更好地利用虚拟化和云的敏捷性、弹性、容灾等优势,赋予大数据系统更多的能力。

“剧透”:在OpenStack云上运行大数据系统的方法

那么,在OpenStack云上运行大数据系统究竟有哪些方法?对此,李明宇表示,OpenStack基金会官方推荐了两种方法:

第一种方法是基于OpenStack服务组件Sahara实现。Sahara又称之为OpenStack的EDP(Elastic Data Processing)服务,它能够很方便地帮用户在OpenStack环境中部署和运行Hadoop、Spark等大数据系统,对云环境的弹性也发挥得比较好,并且能够很好地对接OpenStack的Swift对象存储。

但是Sahara项目也有它的问题,比如支持的大数据系统类型有限,而且必须事先准备好节点镜像,它不支持从S3读写数据,对Hive和Pig的支持也有一定的限制。

假如没有安装Sahara,可以采用第二种方法,即是调用相关的API创建一批虚机(或者用容器也可以),并接入到云平台的SDN网络中,再用Ambari部署和配置Hadoop集群。这时候要注意的是,虚机的设置、组网方案要满足大数据系统的需求,Ambari的配置要符合符合云环境的特点(具体怎样做,会议当天会有详细说明),更进一步,把上述过程用服务编排脚本,例如Heat脚本自动化。

值得说明的是,这种方法不仅仅适用于Hadoop、Spark,还可以用于其他各种大数据系统。它的缺点是用户(云环境的End User)必须自己创建、管理虚机及其网络,并使用Ambari等工具安装部署Hadoop集群,当然,IaaS云服务方也可以提供一些Heat模板的示例和虚机镜像,减少用户需要自己做的工作。

“剧透”不只一点: OpenStack云上提供大数据服务需留意存储问题

谈及在OpenStack云上运行大数据系统需要注意的问题,李明宇与记者分析说:“存储是比较容易遇到的问题。”

现在有不少OpenStack云平台采用分布式存储作为虚拟机的块存储,提供云硬盘等服务。这些存储系统本身有一定的冗余甚至三副本,一些大数据系统也自带数据存储组件,比如Hadoop中的HDFS。HDFS也常采用三副本或纠删码方式保证数据存储的可靠性。如果直接创建虚拟机并安装Hadoop(包括HDFS),则会出现存储资源的浪费。有一种极端但却很常见的情况:虚拟机块存储后端是采用了三副本的分布式存储,HDFS又采用了三副本,最终导致存一份数据需要占用九份数据的空间,造成极大的浪费。此时,一个比较直接的想法是将HDFS的副本数量设为1,因为底层存储已经有冗余了,但这种做法会带来新的问题,对虚拟化技术比较熟悉的工程师可能会想到直接让虚拟机穿透去使用服务器的物理存储硬盘,但这样也会带来一些其他问题。

实践表明,用对象存储是比较好的选择。对象存储属于非常成熟的云服务,不论是AWS还是OpenStack,最早推出的两个服务里面均包含对象存储。更重要的是,OpenStack Swift在支持大数据分析业务时,表现出了优异的性能。OpenStack Swift还支持跨多个数据中心、多个地域构建存储集群,这就给用户构建跨数据中心的大数据系统带来了便利,用户在提交数据处理作业时,不用关心数据到底是存放在哪个数据中心的,而且可以一批任务处理多个数据中心的,甚至多个地域的数据,比如跨北京、香港和北美。

据李明宇介绍,作为一家专注对象存储的厂商,为了更好的为用户提供对象存储的服务,围绕OpenStack Swift,OStorage做了很多工作。OpenStack Swift是一个非常优秀的分布式存储系统,它是OpenStack的六个核心项目之一,也是OpenStack最早的两个项目之一,在国际上前几年就已经出现了百PB级规模的Swift对象存储集群。在国内,美团、去哪儿、凤凰网、顺丰等诸多公司也都选择了基于Swift实现对象存储服务。

“但是OpenStack中缺少对Swift进行运维管理的组件,导致很多政企用户在Swift的使用中遇到不少运维管理方面的问题。” 李明宇如是说。

考虑至此,OStorage开发了一套Swift的部署、运维和管理工具,帮助企业级和运营级用户搭建高性能、高可靠和便于运维的Swift对象存储集群。目前已经用于电信、航天、银行等多个领域客户的生产环境。另外,OStorage还开发了一系列基于Swift的API扩展组件、应用插件和数据迁移工具,帮助用户更方便地应用Swift对象存储。

不只有“剧透”:谈谈中国OpenStack的发展

采访最后,作为OpenStack社区布道师与贡献者,谈起中国OpenStack的发展情况,李明宇表示,他从2013年开始参与OpenStack社区,见证了OpenStack逐步被炒热最后趋于稳定成熟走进各行各业的过程。目前,在国内的金融、运营商、交通、政务、电力、科研等行业,OpenStack得到了非常广泛的应用。可以说,我们日常衣食住行、科教文卫、工业国防……处处都有OpenStack在后台支持着。

随着腾讯云这样的一线大企业荣获OpenStack Superuser大奖以及成为OpenStack基金会白金会员,国内的OpenStack生态也发展到了一个新的高度。

OpenStack本身和OpenStack基金会支持的KataContainer等新的项目未来的定位是"开放基础设施(Open Infrastructure)",将继续加强和扩展包括虚机、容器、SDN、分布式存储等IT基础设施方面的工作,并且让这些基础设施更好地支持云应用的运行。

【51CTO原创稿件,合作站点转载请注明原文作者和出处为51CTO.com】

【编辑推荐】

  1. WOT2018沈剑:从58速运看微服务架构的最佳实践
  2. 七年一剑 华丽蜕变:WOT2018揭秘技术背后的真相
  3. WOT讲师王东:基于实时敏捷大数据理念,构建DBus+Wormhole两大基础平台
【责任编辑:蓝雨泪 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

J2ME手机游戏设计技术与实战

本书主要介绍了在手机上开发J2ME游戏的方法,作者在介绍了J2ME游戏开发相关知识背景的基础上,以大富翁手机游戏的设计开发为例,详细讲述了...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊