使用 Azure 应用服务迁移助手迁移 Web 应用

已完成

现在,评估结果已确定你可以将 Web 应用迁移到 Azure 应用服务,你可完成迁移。 但迁移助手会做什么呢? 它是如何工作的? 当它要求你选择各种设置时,你应该选择什么,为什么?

迁移助手如何迁移 Web 应用

迁移助手首先从你那里收集有关 Azure 帐户的关键详细信息,然后执行迁移。

首先,登录到 Azure 帐户,并使用唯一代码将迁移助手会话与帐户关联。 接下来,选择订阅、资源组和网站的域名。 你可以选择创建新的应用服务计划来托管应用,也可以选择现有计划。 选择会影响托管应用的地理区域。 你还可将此迁移工作与现有的 Azure 迁移项目关联。 最后,你可选择跳过数据库设置,或者选择设置混合连接来实现数据库连接。

迁移助手收集并验证你的选择后,便开始工作。 它在所选区域和资源组中创建所需的应用服务资源。 它压缩 Web 应用的源文件,并使用应用服务部署 API 来部署它们。 最后,它执行可选的迁移步骤,例如帮助你设置混合连接。

成功迁移后,你需要执行任何迁移后任务。 它们可能包括:

  • 手动将 web.config 文件中的应用程序设置和连接字符串移动到 Azure 应用服务。
  • 将数据从本地 SQL Server 实例迁移到 Azure SQL 数据库。
  • 设置 TLS/SSL 证书。
  • 设置自定义域名。
  • 在 Microsoft Entra ID 中设置权限。

你还可以决定更改应用服务托管计划和其他设置,如自动缩放和部署槽位。

迁移方案

下图描述了一个典型的 Web 应用程序,该应用程序托管一个在外围网络(也称为 DMZ、边缘网络和外围子网)中部署了 Web 服务器的体系结构。 应用程序服务器(可通过 HTTP 访问的 Web API)和数据库服务器托管在 intranet 区域的防火墙之后。

A graphic representation of typical web app deployment scenario with app services and data deployed in an intranet zone and a perimeter network.

迁移后,网站和 Web API 将托管在单个应用服务 Web 应用程序上。 数据库将移动到 Azure SQL 数据库实例。 两者都将部署到单个资源组。

A graphical representation of web app migration to Azure App Service and Azure SQL Database.

迁移到 Azure SQL 数据库后,客户可获得更高的复原能力和冗余。

应用服务计划

在迁移期间,迁移助手将:

  • 创建应用服务托管计划。
  • 将 Web 应用部署到单个 Premium P1v2 VM 实例。

如果你不熟悉 Azure 应用服务,应了解 Web 应用、托管计划和托管 Web 应用的 VM 实例之间的关键区别,这非常重要。

应用服务托管计划根据它们要支持的预期工作负荷分为多个层。 托管计划会影响:

  • 可用于运行应用的虚拟机实例的最大数量,以及这些虚拟机的性能特征。
  • VPN 混合连接、网络隔离和自动缩放等功能的可用性。
  • 服务级别协议 (SLA)。

例如,免费层和共享层适用于小概念证明和测试,因此不存在 SLA,多个应用共享虚拟机。 另一方面,隔离服务计划适用于在私有专用虚拟网络环境(具有最先进的硬件、更多的 RAM 以及更快的处理器和 SSD 存储)中运行的任务关键工作负荷。

在每个托管计划中,可以选择实例大小。 实例大小会影响:

  • 内核数、RAM 容量和磁盘存储量。
  • 定价。

可以将多个 Web 应用部署到单个托管计划(类似于在 IIS 的单个实例上运行多个 Web 应用)。 所有 Web 应用都将共享相同的 VM 实例。

有关详细信息,请参阅应用服务概述

数据库迁移

Azure 应用服务迁移助手不会将数据库迁移到 Azure SQL 数据库。 事实上,不需要将数据库迁移到 Azure。 在这种情况下,作为一个可选步骤,迁移助手可以帮助你设置与本地数据库的混合连接。

虽然可以在生产环境中使用混合连接,但需要考虑对性能的影响。 然后,在将数据移动到 Azure SQL 数据库之前,你可能会将混合连接视为临时解决方案。 在开发或测试方案中,与数据的混合连接也可能会很有用。

如果选择“设置混合连接”选项,迁移助手将提示你下载并在服务器上运行混合连接管理器。 混合连接管理器将 Azure 应用服务中运行的 Web 应用连接到 Azure 服务总线中继,以便于与本地数据库终结点进行连接。

下图简要概述了迁移的 Web 应用、本地数据库、混合连接管理器和中继混合连接之间的关系。

Pictorial representation of a web app connected to a database endpoint via Hybrid Connection Manager on-premises and the Relay hybrid connection in Azure.

有关详细信息,请参阅Azure 应用服务混合连接

若要执行迁移,可以使用数据迁移助手。 有关详细信息,请参阅数据迁移助手概述

你可能会有兴趣学习另一个 Learn 模块使用数据迁移助手 (DMA) 评估和转换 SQL Server 数据库

什么是 Azure Migrate 项目?

前面我们提到过,你可以将迁移与 Azure Migrate 项目关联。 Azure Migrate 是处理与迁移相关的事项的中心。 组织使用 Azure Migrate 来捕获要迁移到 Azure 的所有服务器和服务的相关信息。 他们可以使用此信息作为一种发现和评估的形式来确定其迁移工作的范围。 他们可以进行充分计划、通知利益干系人、确定成本、跟踪迁移状态等。

Azure Migrate 支持关键迁移方案,如:

  • 迁移 Windows 和 Linux 服务器(无论这些服务器是托管在 VMware 还是 Hyper-V、物理服务器甚至是其他云中的 VM)。
  • 迁移 SQL Server 和其他数据库,包括数据。
  • 迁移虚拟桌面。
  • 使用 Azure 应用服务迁移助手迁移 Web 应用。

因此,如果已设置 Azure Migrate 项目,可以在迁移过程中指定项目的名称。 此步骤会将迁移详细信息和状态保存在 Azure Migrate 中心。

回顾

在本单元中,我们介绍了几个概念:

  • 如果 Azure 应用服务迁移助手评估结果确定迁移助手可以迁移 Web 应用,它将收集有关 Azure 帐户的信息,在 Azure 中创建新的应用服务资源,并将应用部署到这些资源。
  • 迁移后,可能仍需要执行一些步骤才能使 Web 应用正常运行。
  • 应用服务托管计划将确定 Web 应用可用的功能、硬件类型和 SLA。 实例大小决定内核数、RAM 容量和可用存储量。
  • 单个实例可以托管多个 Web 应用。 所有应用在所有实例上缩放。
  • 迁移期间,迁移助手可帮助设置与本地数据库服务器的混合连接。
  • 迁移期间,迁移助手可以将其进度记录到现有的 Azure Migrate 项目中。