很多企业出于各种原因将工作负载迁移到了云端。公有云比大多数内部部署数据中心的可扩展性更强——其广泛的资源、服务和自动化支持灵活响应用户的需求。这些服务使企业能够以创新的方式构建工作负载,企业还可以从资本密集型硬件和软件投资过渡到经常性运营支出。
然而,企业将工作负载从内部部署数据中心转移到云端的过程并不简单,需要仔细规划、充分准备和清晰的流程。以下概述了成功的云迁移所涉及的主要步骤。
12个关键的云迁移步骤
虽然迁移的驱动因素和目标可能会有所不同,但迁移过程通常可以分为12个不同的步骤,这些步骤构成了全面云迁移清单的基础。
(1)建立商业案例
为什么企业需要迁移特定的工作负载?将工作负载迁移到云端可以提高灵活性,将云平台用作存储目标可以提供便利。企业需要了解驱动因素,例如节省成本、降低基础设施负担、可扩展性、可用性和提高用户满意度。
(2)确定正确的迁移方法
也许在任何云迁移中最有影响力的决定是,是否调整应用程序以充分利用云计算的优势。根据他们拥有的云计算和工作负载专业知识,企业可以采用四种主要的迁移方法:
- 重新托管。这种方法通常称为提升和转移,无需修改即可在云存储和计算资源上重新部署现有数据和应用程序。它通常是最快和最直接的迁移方法——它并不适用于所有类型的应用程序,但当云计算专业知识或对底层代码库的访问很少时,它可以很好地工作。
- 重构。这种方法修改底层代码库的一小部分来优化工作负载,以提高公有云中的可靠性或性能。例如,可能会修改工作负载以使用云平台中可用的数据库服务而不是内部部署数据库。
- 修改。企业可以选择广泛修改工作负载的代码以使用更多云原生服务。这需要对云提供商的资源、服务和基础设施有清晰而详细的了解。但是,工作负载的整体特性和功能保持不变(在理想情况下)。
- 重建。这通常是最复杂和要求最高的迁移方法。它从根本上从头开始重新创建工作负载,以便在云计算提供商的环境中高效地运行。例如,可以使用云原生架构(如微服务)重新设计和重建老化的遗留工作负载。
- 更换。企业没有部署、修改或重新创建工作负载,转而使用第三方供应商的应用程序,通常作为SaaS产品,而不是部署、修改或重新创建工作负载。企业将仅迁移该应用程序的数据。举个简单的例子,使用云计算提供商的工作负载监控实用程序可能比尝试部署和使用在内部部署数据中心运行的相同工具更容易。
迁移替代方案并非全有或全无,可以针对不同的工作负载或用例采用不同的方法。总之,从成本到架构决策,取决于企业选择的方法。
(3)评估成本和需求
清楚了解工作负载的当前成本和性能特征。评估内部部署服务器采购、运营和维护成本。仔细评估工作负载的内部部署性能,通过应用程序性能监控工具收集每秒事务数量和带宽使用情况等指标。IT和业务领导者必须客观地将这些成本和性能指标与将工作负载迁移到云计算基础设施时的指标进行比较。需要记住的是,云计算成本成为经常性预算项目并需要进行规划。
(4)选择云计算环境
接下来,考虑最能反映长期业务需求的目标环境。通常情况下,这些是私有云、公有云和混合云:
- 私有云是企业在其现有数据中心基础设施内实施和运营的小型云平台。这需要大量的财务和技术承诺,并且可能缺乏其他环境中的服务和可扩展性。但是,如果企业需要云计算的灵活性但必须保持对数据和工作负载的完全控制,那么它可能是一个理想的选择。
- 公有云是大型和小型第三方提供商提供的典型商业计算即实用程序服务。公有云通常是广泛且高度可扩展的,具有全球覆盖范围,并提供丰富的个人服务。公有云用户通常以按使用付费的模式使用这些服务。
- 混合云融合了私有云和公有云的优势,为企业提供了极高的控制水平、灵活性和可扩展性。但是,混合云需要最高的投资和承诺才能实施。同样,一些已经熟悉一家云计算提供商的企业也可能在两个或多个云计算提供商之间完成迁移服务,这称之为多云。
(5)选择部署模型
有多种方法可用于从云平台访问服务。每个云平台的便利程度和用户控制程度各不相同。
- 基础设施即服务(IaaS)提供的云计算资源与传统数据中心基础设施非常相似,例如服务器、存储、网络和监控。云计算架构师将这些元素组合起来,构建一个详细的基础设施来承载企业的工作负载。IaaS是大多数云迁移的典型模型。
- 平台即服务(PaaS)通常提供更高集成度的部署环境。它超越了基于硬件的资源,其中包括软件,如数据库、开发工具、集成层、运行时和其他替代一个或多个传统内部部署工具的现成组件。
- 软件即服务(SaaS)提供现成的应用程序,从而减轻企业在云中部署自己的工作负载的需要。SaaS提供商处理所有工作负载的开发和维护。常见的SaaS产品包括电子邮件和生产力应用程序,以及财务和人力资源工作负载。
(6)选择云计算合作伙伴
AWS、谷歌云和微软Azure这三个主要的公有云提供商都为IaaS和一些PaaS部署提供了全球性服务。然而,他们的云计算运营的许多方面可能会有很大不同,从单个服务和API到成本和监控。企业通常根据提供的服务范围和给定工作负载的任何特定功能来选择云计算提供商。例如,AWS提供各种预先打包的计算实例,谷歌云以其机器学习和人工智能服务而闻名。
私有云的常见提供商包括VMware、Dell EMC、IBM、Nutanix和HPE,以及OpenStack开源平台。要考虑的关键因素包括技术熟悉程度、与现有系统集成的难易程度和可靠性。
(7)设计架构
IaaS用户依靠云计算架构师来设计最适合承载工作负载的云计算架构。该设计通常将虚拟化计算、存储和网络实例以及各种服务(例如数据库、日志记录/监控工具、事件驱动计算等)拼凑在一起。
该架构可以简单明了,例如管理简单的重新托管的单个计算和存储实例。该架构也可以是一个错综复杂的环境,支持用于任务关键型生产环境的分布式、高度可靠的工作负载或在云中托管微服务工作负载的许多相关组件。云计算架构师还将考虑与所需架构相关的相应云计算成本,并确保工作负载的所有者采用合理的预算。
谨慎的设计还涉及大量测试以验证架构,并确保工作负载在部署和生产切换后能够正常运行。因此,设计可能涉及在实际迁移/转换发生之前进行多次迭代和改进的验证项目。
企业对云迁移的优先级要特别小心谨慎。大多数企业工作负载都涉及一个或多个依赖项,例如数据库或应用程序监控工具的可用性。云计算架构师必须考虑整个部署范围,并在执行实际工作负载迁移之前安装和验证任何所需的依赖项。
(8)概述迁移步骤
基础设施和依赖关系到位后,IT和业务负责人可以制定实际的迁移计划,详细说明从头到尾执行迁移所需的步骤。迁移计划可能很广泛,涉及许多行动,其中包括:
- 通知用户/客户群;
- 停止并备份内部部署资源;
- 传输和同步工作负载所需的数据;
- 移动或安装工作负载及其云计算基础设施;
- 测试和验证已完成的迁移;
- 准备文档和安排帮助台工作人员以响应查询和故障排除;
- 向部分(或所有)用户开放迁移的工作负载;
- 实施和进行工作负载监控;
- 制定应急计划,包括回滚或恢复。
(9)执行迁移
最终,企业实施迁移计划并将工作负载、依赖项和相关数据迁移到准备好的云计算基础设施。这一过程还涉及进行网络更改,例如配置域和IP环境以及设置安全环境,以便工作负载流量成功(且安全)重定向到云计算工作负载。
为确保迁移事件顺利进行,需要提前通过仔细规划和原理验证项目来测试和验证迁移过程。与此同时,在发生意外问题时,保留当地IT人员和云计算提供商技术支持的当前和直接联系信息。
(10)测试工作负载
在迁移完成后,需要彻底测试工作负载的功能和性能。企业收集和评估工作负载指标,并寻找要缓解的漏洞。从迁移人员的基本测试开始,然后将迁移的工作负载开放给一系列更广泛的用户组,直到所有用户都可以成功使用迁移的工作负载。
(11)监测和调整
在迁移测试和转换之后,需要像处理任何部署的工作负载一样执行持续维护,例如监控、支持/故障排除、调整、改进和其他一般维护。这些任务包括:
- 监控工作负载的性能以预见使用趋势、发现瓶颈或支持故障排除;
- 定期审查部署配置以确保足够的安全性和合规性;
- 检查每月账单并确保工作负载保持在预算范围内;
- 评估迁移的工作负载的成本和性能,以确保它实现业务的预期收益。
(12)加强云计算技能和培训
虽然云计算供应商非常努力地简化向云计算基础设施的迁移,但云计算环境与传统的内部部署数据中心完全不同。即使是最简单的重新托管项目也很少是直接的1:1交换。任何云迁移项目都需要清楚了解特定云计算提供商的资源、服务、成本结构和流程。没有任何迁移的向导程序可以替代基本的专业知识和经验。这是通过两种方式实现的:
首先,在IT和工作负载所有者之间建立并促进谨慎的沟通与协作。IT和业务领导者必须就云迁移的目标和预期收益达成一致。技术人员必须了解利益相关者的要求和期望,以便为工作负载创建合适的云计算基础设施。同样,业务领导者必须相信技术人员对迁移的现实期望和限制。
其次,技术人员必须了解特定云计算提供商的服务和API——云计算提供商可以提供什么以及如何有效地使用这些产品。利用云计算提供商的培训,例如AWS解决方案架构师认证。企业可能会投资于测试和实验,以构建原理验证部署,以在进行实际迁移之前验证云计算架构。一些企业可以通过聘请在云计算应用方面经验丰富的云计算架构师来培训员工。