Docker将会改变Hadoop,变的更快更容易


【编者的话】 最近在San Jose,Clif开幕的hadoop峰会上会有关于Docker和Hadoop的话题讨论,越来越多的创业公司致力于使用Docker技术来简化hadoop应用开发部署的速度。目前有两个方向:1)使用Docker容纳Hadoop stack;2)通过YARN来部署基于Docker开发的容器化应用。
1.jpg

本周,hadoop峰会召开,其中着重讨论了新平台(例如docker)将会如何在hadoop环境下改变大数据分析行业。

BlueData,一家大数据基础架构软件平台供应商,已经把对Docker containers的支持加入其免费EPIC平台,这个平台被称为EPIC Lite,允许用户在笔记本电脑上运行虚拟的hadoop或者Spark集群。

另外,她还宣布了夏季版本,EPIC version 1.5,将会提供对新hadoop和Spark版本的支持,其中整合了Apache Ambari和Cloudera Manager, 支持通用大数据分析应用和“自建应用”能力。

VMware老员工Kumar Sreekant 和Tom Phelan在2012年创建了此家公司,期望在私有数据中心提供类似于Amazon Elastic MapReduce的大数据自服务架构,到去年九月份已经融资1900万美金,并且完成了静默期的开发工作。

EPIC软件解决方案——不要把它跟健康领域HER Giant混淆起来—— 运行在任何硬件上(任何服务器、存储),其目标就是在企业内部(基于裸机) 快速部署hadoop环境。

通过特有技术解决IO性能问题,允许计算和存储分离,提供管理虚拟架构下多用户环境工具,大大简化客户部署hadoop的难度。他们宣称采用Docker主要是因为他们想在给大数据应用提供虚拟化带来便利的同时,提供容器的简化和裸机的性能。

同时,她也承认另外的动机:

“我们想给开发者和数据科学家带来便利,让他们很容易创建自己集群,快速指向数据进行分析;而在现在这是很困难的…”Anant Chintamaneni,公司产品VP这样说到。我们的产品可以帮助他们在自己的笔记本电脑上快速获得如Cloudera或者Hortonworks之类的功能。

他说他们想给客户从自己笔记本电脑访问软件的授权,如果喜欢他,可以让IT管理者去购买他。


Anant Chintamaneni说:“Docker目前来看是此领域最成熟的…,客户通过Docker可以体验到在一台笔记本电脑或者VM上创建由多个节点构成的集群。数据科学家希望在多个节点上验证算法,或者可以弄清楚应用在真正集群上如何运作”。
企业版本面向多用户需求。Lite版本只包含几个镜像,这是因为公司想使它保持轻量级。

“随着越来越多用户采用Docker容器技术,像BlueData这类公司将Docker加入其支持的虚拟技术是势在必行的。”Tomer Shiran说,他是MapR公司产品管理VP以及Apache Drill项目管理委员会成员。

“Docker容器提供比传统虚机更好的性能,因此我希望hadoop集群能在Docker上运行的更快些。”

BlueData并不认为虚拟化正在消亡,但是像VMware,尽管也采用Docker技术,并且在某些产品中已经嵌入了Docker,看到了Docker之后的危机并且正在试图在危机出现前都改变它。

Jason Schroedl,VMware市场部VP说
:“我们认为容器是另外一种获得虚拟化好处的方法。我们的计划是开发一种可以运行在任何虚拟化环境下的大数据平台技术,我们相信容器正是这样一种可以给客户带来好处的技术。”

他还说公司目前还没有看到许多企业用户希望软件运行在Docker中的需求,但是希望很快会出现。

Tim Hall,Hortonworks产品管理VP说,Docker在企业应用中表现是成熟的,随着基于Docker的私有和共有云平台出现,hadoop变成一种必须提供的关键服务。

明天在San Jose,Clif开幕的hadoop峰会上会有关于Docker和Hadoop的三场讨论,例如,来自Hortonworks的Sidharta Seethana和来自Altiscale的Abin Shahab将会讨论Apache YARN和Docker生态环境。

Altisacle,一家提供Hadoop-as-a-service的公司,已经通过Docker容器来运行Hadoop服务,尽管这意味着他们的系统需要直接部署和管理Docker容器,而不能享受YARN(hadoop2.0带来的数据处理框架)带来的便利,然而他们发现Docker带来更多的可重复使用和自动化特性。

Pachyderm则提供更加简化的大数据分析平台,他们使用Docker来实现hadoop stack,提供了一个MapReduce的可替代选择。他们是基于CoreOS的Fleet和etcd,而不是Apache的YARN和Zookepper。

Hall说,有两种方式处理这种需求,而Hortonworks都提供。

第一种是使用Docker容纳Hadoop stack,通过Cloudbreak(最近收购SequenceIQ获得)和Hortonworks Data Platform来实现。通过使用Docker镜像在任何主流云平台启动HDP,包括微软Azure、AWS、Google Cloud Platform等。

第二种是通过YARN来部署基于Docker开发的应用。这种方式已经在HDP2.2中发布,客户可以体会如何更好利用他。

“本质上,Docker提供了一种理想的隔离和打包hadoop应用的方法,我们也正在研究如何使得Slider框架和Docker可以更好结合,从而使得部署更加简便”,Hall说。

“我们有一个客户正在考虑用同一种方法来,使用HDP和Docker,来部署他们的数据平台,他们使用Cloudbreak在云端将hadoop部署在Docker中,他们计划把他们的应用打包成Docker镜像,运行在YARN之上。还有其他很多客户和代理商采用我们基于Docker的hadoop技术来解决不可知环境下应用部署。其后台推动力主要来自于敏捷性、新方法和一致性兼顾的速度。”

另外一种传统的在虚拟环境中使用hadoop的方式是OpenStack。

他说,将hadoop运行在Docker之上带来的好处包括:
  • 快速安装(预先拉下来的RPMs)
  • 开发、QA、生产面对统一流程和镜像
  • 任意节点面对统一流程


在YARN上运行基于Docker开发应用的好处:
  • 更好的软件隔离
  • 开发、QA、生产面对统一流程和镜像
  • 更好的应用版本和发布控制


大数据应用开发者将会越来越多的学习使用Docker来打包容器化他们的应用,他说,现在又很多兴趣在裸机上运行Docker,而不是在VMs之上,这样可以对hadoop类应用提供更好的性价比。除此之外,他说YARN成为一种大数据应用分发部署平台。这种需求推动了YARN对内置容器化部署支持和在YARN上提供一种应用管理框架的需求。

原文链接:Docker Will Change Hadoop, Making it Easier and Faster(翻译:杨峰 校对:魏小红)

3 个评论

就算真的做到自动化部署hadoop集群,出了问题,恐怕还是要手动解决。
如果IO、网络性能损耗降不下来的话搭建Docker的Hadoop集群意义其实不大。当然可以使用HOST网络模式然后-v方式来存HDFS,那还不如在本机直接搭来得清爽
在Hadoop机器跑Docker的数据分析程序倒是一个不错选择

要回复文章请先登录注册