第6章 六项策略将应用程序迁移至云端
最初发布于2016年11月1日:http://amzn.to/migration-strategies
“新移民生活得如何——这取决于诸多因素:教育、经济状态、语言、登陆地点以及在该处获得了怎样的支持。”
——Daniel Alarcón
本章概述了我们从客户身上观察到的6种具体应用程序云迁移策略。这些策略以Gartner公司于2011年提出的“5个R”理论为基础。这是云迁移相关系列3章中的第三部分。虽然各章内容也可独立参考,但我建议大家作为一体来阅读。
制定迁移策略
企业通常会在迁移过程中的第二阶段期间(即组合发现与规划),开始考虑如何对应用程序进行迁移。在这一阶段,他们会意识到自己的环境中存在什么、拥有怎样的相互依赖性、哪些易于迁移而哪些难以迁移,并逐渐探索出对每一款应用程序的具体迁移方法。
利用这些知识,组织可以概括出一项计划(该计划应随迁移与学习过程的推进而随之变化),用于指导如何对组合内的每款应用程序进行迁移以及以何种顺序进行迁移。
如第2章所述,对现有应用程序进行迁移时的复杂性多种多样,具体取决于架构以及现有许可安排。如果要将应用程序迁移的复杂度范围视为一段频谱,那么我会把虚拟化且面向服务的架构作为低复杂性一端,整体式大型机则作为高复杂的一端。
这里,我建议大家从低复杂度端点作为起始,因为其更易于实现——这将为您快速带来积极的反馈,或者可称为“快速胜利”。
应用程序迁移策略:6个R
最常见的6种应用程序迁移策略分别如下。
(1)重新托管(Rehosting)——亦称为“直接迁移”。我们发现,很多早期的云项目利用云原生能力进行从头开发。但对于大型迁移场景来说,组织一般希望尽快扩大迁移规模以满足商业案例需求,在这种情况下大多数应用程序将采取重新托管的处理方法。以GE石油与天然气公司为例,即使不实施任何云优化,也可以仅通过重新托管获得约30%的成本节约成效。
大多数重新托管方法可能通过工具实现自动化(例如AWS VM Import/ Export),但也有一些客户倾向以手动方式执行,从而在部署过程中学习如何将遗留系统与新的云平台进行适配。
我们还发现,一旦应用程序开始运行在云端,其优化/重构难度将会显著下降。这一方面是因为组织在此期间发展出了更强大的技能,另一方面则是因为优化/重构工作中最困难的部分——即应用程序、数据与流量迁移——已经完成。
(2)平台更新(Replatforming)——我有时会将此称为“修补加迁移”。大家可以在此期间执行一部分云(或者其他)优化,从而实现一些切实收益;但请注意,我们不会在这里对应用程序的核心架构作出变更。大家的目标一般比较明确:希望通过将数据库实例迁移至Amazon关系数据库服务(简称Amazon RDS)等数据库即服务平台,或者将应用程序迁移至Amazon Elastic Beanstalk等全托管平台,从而减少对应的管理时间投入。
我们接触过的一家大型媒体企业希望将数百台Web服务器由内部环境迁移至AWS云并在此过程中将WebLogic(一种许可费高昂的Java应用容器)替换为Apache Tomcat(一套开源版本的同类方案)。通过迁移至AWS,该公司不仅在资源成本与敏捷性方面得到改善,同时也节约了高达数百万美元的许可费用。
(3)重新采购(Repurchasing)——转移至不同产品。最为常见的重新采购活动体现为转移至SaaS平台,例如将CRM转换为Salesforce.com、将HR系统转换为Workday以及将CMS转换为Drupal等。
(4)重构与重构(Rearchitecting)——重新规划应用程序的架构与开发方式,且通常考虑到云原生特性的优势与功能。这项工作一般受到添加功能、提升规模或者强化性能等明确业务需求的驱动,且这些目标在应用程序的原有环境中往往很难实现。
大家是否希望由整体式架构迁移至面向服务(或者无服务器)架构,从而提升敏捷性或者强化业务连续性(我就听说过有些运维人员不得不在eBay上为大型机购置风扇皮带的故事),这种迁移模式往往最为昂贵,但如果能够借此实现良好的产品-市场契合度,那么其同样也是最具回报的迁移方法。
(5)清退(Retire)——摆脱原有束缚。一旦明确了环境中现有的一切,大家就可以对每款应用程序的实际归属进行判断。我们发现,约有10%的企业IT组合(我甚至看到过高达20%的情况)已经彻底废弃不用,即可以直接关闭。由此带来的成本节约能够用于支持商业案例、引导团队将注意力集中在真正具有实际价值的工作上,同时有效减少攻击面。
(6)保留(Retain)——这一般代表着“以后再说”或者(暂时)什么都不做。可能大家都会面对一些正等着做旧老化的应用,还有刚升级暂时没有优先级的应用,或者暂时不打算迁移的某些应用。在迁移之初,大家应该尽量选择那些对业务拥有直接影响的应用方案。而随着技术资产组合逐步由内部形式转换为云形式,这种保留需求将会自然而然地快速减少。