为什么我们选择Docker来构建Crayon的数据处理平台

本文讲的是为什么我们选择Docker来构建Crayon的数据处理平台 【编者的话】随着Hadoop成为大数据的事实标准,Hadoop的生态也在不断完善,环境搭建的复杂性,给开发和测试带来了不便。如何用Docker来降低Hadoop开发中的复杂性,本文中Crayon带来了他们的方案。

之前,企业软件厂商都会尽可能多的控制客户的基础安装环境,因为如果安装环境出错,就可能引起很多不必要的麻烦,甚至大灾难。

最初,公司提供一个包含定制的 操作系统镜像 的应用,操作系统镜像作为软件安装的其中一份子,它给予了厂商从硬件到操作系统的对环境的完全的控制力。但即便是这样也很难解决问题。企业软件供应商不得不与其它公司形成合作关系,并且依赖这些公司,来为他们分发硬件平台。他们必须寻找多个合作伙伴关系,以避免被锁定在一个合作伙伴。

服务器虚拟化

服务器虚拟化用来解决多供应商的硬件平台和环境问题。它帮助企业软件供应商有效的发布他们的软件,通过在部分 虚拟机管理程序 之上进行测试和认证。它提供了一个良好的顶层抽象,企业软件应用能够在其中部署和测试。在我早先工作的组织中,我们使用生成的 ova 镜像,用来在虚拟机管理程序上创建 虚拟机 实例,对于一个完全封闭的应用,这有助于创建相同结果,更便于管理。
image1.png

这个模式有几个问题无法解决。首先,构建ova镜像,你需要有大量的系统级的技能。其次是管理分布式环境。当一个软件要求分布式的安装在多节点上,仍然有大量的手工操作包括启动这些虚拟机。随着企业开始使用云作为他们的基础设施,不考虑应用的种类(即使当应用运行在一个节点中),管理一个分布式环境变得更重要。

Docker

Docker  的问世正好解决了这两个问题。Docker允许任何人很简单的快速创建、执行和测试Docker容器。有大量的框架,用于分布式Docker的管理,比如Google 的 Kubernetes CoreOS Docker编排三剑客 等等,这些都很容易和Docker结合。

除了这些,相比于虚拟机,Docker是非常轻量级的。如下图所示,它避免了虚拟机管理程序的附加层,运行一个轻量级的 Docker引擎 。它支持Windows 和 Boot2Docker

虚拟机和Docker的区别

image2.png

我们如何选择我们的数据处理堆栈

虽然Docker试图解决很多问题,但是我们选择了“构建一致的环境便于去复制”这一方面。

最初在Crayon,在我们的开发周期中,为了测试很少的代码,我们不得不改变我们的 MapReduce 程序。我们需要将我们的程序放到 AWS  环境中的生产集群中,这主要是为了解决配置本地用于测试的 Hadoop  环境的时间和精力。当一个 POC  仅需要Hadoop生态系统中的一些组件来完成工作时,反复的配置系统是没有效率的,尤其当 Hadoop生态系统 的组件一直在增加时。

我们使用 SequenceIQ 提供的工具来开始我们的自动化Hadoop集群之旅,几分钟之内我们就能够启动一个多节点的Hadoop集群。有趣的是,他们采用blueprints 的格式来抽象化集群的配置,通过Docker的帮助来自动化集群的配置和启动。 Hortonworks收购SequenceIQ  表明了SequenceIQ所做的自动化Hadoop集群开发这类工作的重要性。

SequenceIQ启发了我们采用Docker。我们通过定制和调整SequenceIQ的Docker镜像取得了一些进展。我们为数据处理构建了一个完全的Docker化平台。

对于我们所有使用Hadoop组件的poc,我们创建了一致的,易于复制的Docker实例,取代了之前人们试着去在本地安装Hadoop生态系统的每个组件,对于开发和测试环境的需要,我们只需要创建一次,便能在任何时间和地点使用它。

这就是我们达到一致的开发,测试,集成和部署的方式之旅,是无缝的。 我们期待让Docker成为我们默认的神器,直到部署阶段。 虽然在企业环境中可能存在一些挑战,我们希望会有一个行业广泛采用Docker。 请继续翻看我们关于我们目前所作的尝试和成就的详细内容。

原文链接:Why we chose Docker to build Crayon’s data processing platform(翻译:覃璐)

原文发布时间为: 2016-01-31
本文作者:qinlu1988
本文来自云栖社区合作伙伴DockerOne,了解相关信息可以关注DockerOne。
原文标题:为什么我们选择Docker来构建Crayon的数据处理平台
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值