规划迁移
对于考虑将其本地资源迁移到 Azure 的组织(如 Contoso),迁移的第一步是规划,这也是最重要的步骤之一。 在迁移项目中,大部分工作通常是在预规划阶段完成的。
这些阶段涉及对以下方面的非常全面的评估:
- 业务模型。
- 当前处理和系统。
- 完成迁移后,Azure 中的业务流程是怎样的。
下表标识了应考虑的各个项,以及在定义和确定整体迁移策略时应采取的相应策略。
注意事项 | 详细信息 |
---|---|
业务驱动因素 | IT 领导者需要与业务合作伙伴密切合作,了解他们希望通过迁移实现的目标。 业务驱动因素应侧重于处理业务增长、限制风险以及指定迁移范围。 |
迁移目标 | 这些目标用于确定最佳迁移方式。 |
解决方案设计 | 确定目标和要求后,设计和查看部署解决方案并确定迁移过程,包括将用于迁移的 Azure 服务。 |
选择迁移策略
云迁移策略分为四大类:
- 重新托管
- 重构
- 重新架构
- 重新生成
采用的策略因业务驱动因素和迁移目标而异。 甚至可以采用多种模式。 例如,Contoso 可能会选择重新托管简单应用或对其业务并不重要的应用,但重新构建更为复杂的业务关键型应用。 下表介绍了这些模式。
模式 | 定义 | 何时使用 |
---|---|---|
重新托管 | 通常被称为“直接迁移”迁移。 此选项无需更改代码,可便于将现有应用程序快速迁移到 Azure 中。 每个应用都按原样迁移,以便从云中获益,而不会产生与更改代码相关的风险和费用。 | 当需要将应用快速移动到云中时。 当想要在不修改应用的情况下移动该应用时。 当应用设计为在迁移后可利用 Azure IaaS 的可伸缩性时。 当应用对业务非常重要,但无需立即更改应用功能时。 |
重构 | 通常称为“重新打包”,重构需要对应用进行最小程度的更改,这样它们才能连接到 Azure 平台即服务 (PaaS) 并使用云产品/服务。 例如,可以将现有应用迁移到 Azure 应用服务或 Azure Kubernetes 服务 (AKS)。 或者,可以将关系数据库和非关系数据库重构为 Azure SQL 数据库托管实例、Azure Database for MySQL、Azure Database for PostgreSQL 和 Azure Cosmos DB 等选项。 如果可轻松重新打包应用,使其在 Azure 中工作。 | 如果想要应用 Azure 提供的创新性 DevOps 实践,或正在考虑将容器策略用于工作负荷的 DevOps。 对于重构,需要考虑现有基本代码的可移植性,以及可用的开发技能。 |
重新架构 | 重新架构以便迁移的重点在于修改和扩展应用功能及基本代码,以优化云可伸缩性的应用体系结构。 例如,可将整体应用分解为一组一起工作且缩放轻松的微服务。 或者,可以将关系数据库和非关系数据库重新构建为完全托管的数据库解决方案,如 Azure SQL 数据库托管实例、Azure Database for MySQL、Azure Database for PostgreSQL 和 Azure Cosmos DB。 | 当应用需要进行重大修订,以便纳入新功能或在云平台上有效工作时。 当想要使用现有应用程序投资、满足可伸缩性需求、应用创新性 DevOps 实践和将虚拟机 (VM) 的使用降至最低时。 |
重新生成 | 重新生成通过使用 Azure 云技术从头开始重新生成应用来使操作更进一步。 例如,可使用云原生技术(如 Azure Functions、Azure AI、Azure SQL 数据库托管实例、Azure Cosmos DB)生成尚无人开发的应用。 | 当希望快速开发且现有应用的功能和生存期有限时。 当准备好加快业务创新(包括 Azure 提供的 DevOps 实践)时。 当你希望使用云原生技术构建新的应用程序时。 当你希望利用 AI、区块链和物联网 (IoT) 中的改进时。 |
迁移工具
选择策略后,Contoso 必须选择适当的迁移工具或工具。 下表介绍了可供 Contoso 使用的一些不同迁移工具,具体取决于迁移方案。
工具 | 迁移方案 |
---|---|
Azure Migrate:服务器评估 | 对在 Hyper-V 和 VMware 环境中运行的物理服务器和本地虚拟机进行评估,为迁移到 Azure 做好准备。 |
Azure Migrate:服务器迁移 | 对在 Hyper-V 和 VMware 环境中运行的物理 Windows 服务器和本地 VM 以及其他公有云 VM 进行迁移。 |
Azure Migrate:数据库评估 | 对本地 Microsoft SQL Server 数据库进行评估,为迁移到 Azure SQL 数据库、Azure SQL 数据库托管实例、数据库托管实例或运行 SQL Server 的 Azure VM 做好准备。 |
Azure Migrate:数据库迁移 | 执行评估,为迁移到运行 SQL Server 的 Azure VM、Azure SQL 数据库或 Azure SQL 数据库托管实例做好准备。 |
Azure Migrate:Web 应用评估 | 对本地 Web 应用进行评估,并将其迁移到 Azure。 |
Azure Migrate:Data Box | 使用 Azure Data Box 将大量脱机数据迁移到 Azure。 |