转载

迁移到Docker:在RightScale,我们为什么要全部迁移?

作为一家提供对多云平台统一访问接口的公司,RightScale帮助客户管理云计算提供商的IT流程。随着Docker的流行,该公司也开始关注这一概念。而且随着对Docker的了解,RightScale公司发现了该容器的好处,并准备将软件开发和部署过程迁移到Docker中。Tim Miller是RightScale公司的副总工程师,领导着公司的产品开发与部署工作。在Tim Miller最近的 一篇博客文章 中,他讲述了RightScale决定要迁移到Docker的原因。

当一种新的技术迅速变得火热时,很多人都会开始“炒概念”。因此,当Docker在两年前出现的时候,RightScale就决定迅速跟进。在过去的18个月,Tim Miller率领RightScale的技术团队一步步将软件开发和部署过程迁移到了Docker。

在这个过程中,RightScale公司已经发表了一些有关 Docker的博客 ,并在早期学习中召开了 Docker在线研讨会 ,供大家学习和借鉴。由于Docker本身仍然在发展,Tim Miller团队一路走过来面对了很多挑战。尽管如此,他们还是已经证实,容器的确可以带来明显的价值——从减少成本到正价敏捷性。由其研发团队、架构团队和CTO参与的实验已经解决了早期的问题和目标。因此,RightScale现在已经决定全力以赴,全部迁移到Docker,并开启了一个名为Project Sherpa项目。该项目的目标就是在未来若干个月内来,将整个RightScale云管理平台(包含52个服务和1028个云实例)迁移到Docker容器。

Tim Miller将以周为单位来分别记录迁移过程,分享他们的尝试和痛苦、面临的挑战以及解决这些问题的方案。Tim Miller希望能够将痛苦降到最低,并让其经历帮助到决定跟随(或不跟随)其步伐的其他人。由于其并没有和Docker合作或为Docker工作,读者你至少可以得到一个开发团队基于其经历所得出的原始意见。这就像是,你或许可以通过看别人将车开出悬崖掉到湖中,来决定自己是否要继续前进。

原因

过去使用Docker的经历让Tim Miller团队觉得,Docker的确值得使用。尽管Docker的确还不成熟,还有很多问题需要修复,但其概念很扎实,实现也正在不断改进。在早期使用Docker时,该团队就发现,使用Docker的开发团队由于迭代速度更快,从而可以明显的加快研发速度。此外,在若干服务中增加宿主机的密度使得Docker可以节约花费。公司的运维团队也因为看到了Docker带来的效率提升而非常喜欢该容器。

Tim Miller团队相信,容器在未来的软件交付中肯定会成为主要技术迁移的其中一种。它将影响RightScale以及其客户在未来交付软件的方式。其客户群采用Docker的速度也非常快。当传统企业客户已经开始注意容器时,倾向于与尖端科技更接近的“数字”客户已经正在深入了解并使用。

由此,RightScale云管理平台将会需要在现有云负载之外支持容器化的负载。那么,还有什么比直接开始研究并迁移到Docker更能精确了解客户的需求呢?!通过在开发、测试和产品中使用Docker,Tim Miller团队希望能够扩展现在看到的优势,并在已有平台中加速对容器的支持,使得客户也可以更好的使用Docker。

迁移到Docker:在RightScale,我们为什么要全部迁移?

预期的结果

RightScale公司希望能够从Sherpa项目中获得如下好处:

  • 基于在已经容器化的服务中所看到的情况的开发速度的提升。
  • 减少配置框架所需要的ServerTemplate(RightScale中模板机制的名字)的复杂度和数量。
  • 减少云平台的开销。该团队认为,容器化可以节约开发/测试框架中70%的花费以及产品中至少40%的开销。开发所取得的节约部分是来自现在可以通过笔记本电脑来开发。
  • 学习一个新的炫酷技术。
  • 了解到团队需要哪些特性来支持Docker(以及希望在那些特性上得到巨大提升)。

内容和时间

现在,RightScale公司共有52个服务,其中7个已经在容器中。所以尚有45个服务要容器化。这部分工作包含了特别简单和特别复杂的部分。由此,他们会重新设计开发工作流来使得开发人员可以通过笔记本电脑来设计系统以及开发操作发布的自动化工具。所有这些都将会在4周内完成。那么,什么可能会出问题呢?

在夏尔巴人(Sheerpa)帮助登山者登顶珠峰后,Tim Miller团队将初始项目命名为Project Sherpa。为了开启Project Sherpa,团队成员决定开始穿着登山所需的衣服。

迁移到Docker:在RightScale,我们为什么要全部迁移?

其中一个设计人员甚至专门选择了带有Project Sherpa图标的背景。那么,印有Project Sherpa的T-Shrit也不远了吧?

方法

为了未来在未来4周内完成这么多工作,所有非紧急特征的开发将会暂停。当然,那些已经向客户保证的工作肯定会继续。但其他工作肯定要等1个月左右。

由于公司有九个工程团队分别负责平台的不同部分,这些任务分别被分派了下去。每一个研发团队将会负责若干服务,并配备一个运维工程师进行合作。因此,整个工程团队将会在1个月后变成Docker专家。幸运的是,在过去18个月中已经参与Docker迁移工作的工程师可以帮助其他人快速展开工作。

感谢陈兴璐对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(微信号: InfoQChina )关注我们。

原文  http://www.infoq.com/cn/articles/migrate-to-docker-part01
正文到此结束
Loading...