你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
应用服务支持两种类型的 虚拟网络集成:区域虚拟网络集成 (建议)和 基于网关的虚拟网络集成 (旧版)。 本文将指导你从基于网关的旧方法迁移到新式区域集成方法。
概述
区域虚拟网络集成是将应用服务应用连接到 Azure 虚拟网络的建议方法。 与基于网关的集成不同,区域集成不需要 VPN 网关,并提供卓越的性能、更广泛的功能支持和增强的安全功能。
为什么要迁移? 超过 99% 的应用服务虚拟网络集成使用区域方法,因为它具有优势。 仅当你需要直接连接到另一区域的虚拟网络且无法建立虚拟网络对等互连时,才应考虑基于网关的集成。
主要差异和优势
基于网关的集成具有区域集成解决的重大限制:
基于网关的集成限制
在以下方案中不能使用基于网关的集成:
- 使用连接到 ExpressRoute 的虚拟网络
- 来自 Linux 应用
- 从 Windows 容器应用
- 访问服务终结点保护的资源
- 解析引用受网络保护的 Key Vault 的应用设置
- 使用既支持 ExpressRoute,也支持点到站点/站点到站点 VPN 的共存网关
功能对比
功能 / 特点 | 区域虚拟网络集成 | 基于网关的集成 |
---|---|---|
网关要求 | 没有 | 所需的虚拟网络网关 |
带宽 | 没有 VPN 限制 | 受 SSTP 点对站点 VPN 服务的限制 |
连接 | 每个应用服务计划可包含两个子网 | 每个计划可包含五个虚拟网络 |
网络功能 | 路由表、NSG、NAT 网关 | 不支持 |
平台支持 | Windows、Linux、Windows 容器 | 仅限 Windows |
服务终结点 | 完全支持 | 不支持 |
密钥保管库集成 | 受网络保护的 Key Vault 应用设置支持 | 不支持 |
ExpressRoute 兼容性 | 完全支持 | 不支持 |
跨区域连接 | 仅通过全球对等互联 | 支持直接连接 |
性能 | 本机虚拟网络性能 | VPN 开销 |
缩放 | 提高资源利用率 | 受网关容量限制 |
成本 | 不收取额外费用 | VPN 网关费用 (19-525 美元/月) + 带宽成本 |
先决条件
在开始迁移之前,请确保具备:
- 应用服务计划:基本、标准、高级、PremiumV2、PremiumV3、PremiumV4 或弹性高级计划
- 虚拟网络:应用所在的同一区域中的虚拟网络
- 子网:空子网或专用于虚拟网络集成的新子网
- 权限:配置虚拟网络集成的相应 RBAC 权限
- 规划:了解当前的网络要求和依赖项
迁移规划和准备
重要
迁移过程是一项断开连接然后重新连接的操作,会导致宕机时间。 虚拟网络集成特定于槽,在部署槽位操作期间不会进行切换,需要仔细规划以最大限度地减少对应用程序的影响。
了解停机时间和影响
在连接到区域集成之前,迁移涉及与基于网关的集成完全断开连接。 在此过程中:
- 应用失去与虚拟网络资源的连接
- 对专用终结点、服务终结点或内部服务的依赖关系中断
- 停机时间通常持续 2-5 分钟,具体取决于配置复杂性,但可能更长的时间
迁移策略
选择最符合停机时间容差和操作要求的策略:
选项 1:蓝绿部署(最短停机时间)
最适合:生产工作负荷需要最短的停机时间
- 在同一区域中创建新的应用服务计划
- 在新计划中设置区域虚拟网络集成
- 将您的应用程序部署在具有区域集成的新计划中
- 全面测试 以确保连接按预期工作
- 使用 Azure 流量管理器、应用程序网关或 DNS 更改切换流量
- 验证稳定性后解除旧计划
选项 2:部署插槽测试(最小停机时间)
最适合:在短暂的生产停机时间下进行彻底测试
由于虚拟网络集成特定于槽,因此可以在过渡槽上测试区域虚拟网络集成:
- 提前准备集成子网
- 使用准备好的子网在过渡槽上配置区域 VNet 集成
- 在使用区域集成的过渡槽上对应用程序进行彻底测试
- 准备就绪后,断开基于网关的集成与生产 的连接,并在生产中配置区域集成
- 切换槽以提升已测试的代码
注释
交换后,虚拟网络配置将保留在各自的插槽上。 进行槽切换后,如果在槽切换之前在生产槽上配置了区域虚拟网络集成,则生产槽会有经测试的应用程序代码和新配置的区域虚拟网络集成。
选项 3:直接迁移(计划内停机)
最适合:可以容忍短暂停机的应用程序
- 安排在流量小的时段(夜间、周末)
- 提前准备所有配置
- 将计划内维护通知给利益干系人
- 准备好回滚方案
迁移前准备步骤
步骤 1:评估当前设置
- 记录现有连接:请注意哪些应用使用基于网关的集成
- 确定依赖项:通过当前集成访问的目录资源
- 查看网络规则:记录任何 NSG、路由表或防火墙规则
- 评估停机时间容差:确定可接受的维护时段
- 计划回滚策略:准备在出现问题时进行还原的程序
步骤 2:规划子网配置
用于区域虚拟网络集成的子网必须满足 特定要求:
-
大小:最低
/28
(16 个地址),建议/26
用于生产(64 个地址) -
委派:必须委托给
Microsoft.Web/serverFarms
- 可用性:不能同时由其他服务使用
- 位置:必须位于要与 集成的同一虚拟网络中
子网规模划分指南
情景 | 建议的大小 | 最大应用实例数 |
---|---|---|
开发/测试 |
/28 (16 个地址) |
11 个实例 |
生产 |
/26 (64 个地址) |
59 个实例 |
多计划子网加入 |
/26 或更大 |
因计划而异 |
小窍门
始终预配两倍于预期最大规模的 IP 地址,以适应平台升级和扩展操作。
多计划子网加入
可以使用 多计划子网加入功能将多个应用服务计划连接到同一子网。 这种方法:
- 至少需要
/26
子网 - 允许资源整合
- 支持跨不同订阅的计划(子网可以位于不同的订阅中)
步骤 3:创建集成子网
- Azure 门户
- Azure CLI
- Azure PowerShell
- 在 Azure 门户中导航到虚拟网络
- 选择 子网>+ 子网
- 配置子网:
-
名称:选择描述性名称(例如
app-service-integration
) - 地址范围:选择适当的 CIDR 区块
-
子网委托:选择
Microsoft.Web/serverFarms
-
名称:选择描述性名称(例如
- 选择“保存”
执行迁移
同区域迁移(最常见的方案)
对于当前在同一区域使用基于网关的集成的应用:
步骤 1:断开基于网关的集成
- Azure 门户
- Azure CLI
- Azure PowerShell
- 在 Azure 门户中转到你的应用
- 选择“设置>”
- 在 VNet 集成下,选择“断开连接”
- 确认断开连接
步骤 2:配置区域虚拟网络集成
- Azure 门户
- Azure CLI
- Azure PowerShell
- 在应用中,选择“设置>”
- 在 “出站流量配置”下,选择“虚拟网络集成”旁边的 “未配置 ”
- 选择“添加虚拟网络集成”
- 选择虚拟网络和准备好的子网
- 选择“连接”
步骤 3:验证连接
集成完成后,测试应用与虚拟网络资源的连接:
- 应用程序测试:验证应用是否可以访问数据库、存储和其他资源
- DNS 解析:确认 DNS 查询能够针对专用资源正确进行解析
- 性能测试:在迁移后监视应用程序性能
跨区域迁移
如果你当前正在使用基于网关的集成连接到另一区域中的虚拟网络:
设置 虚拟网络对等互连 以实现区域集成。
- 在应用的区域中创建虚拟网络
- 在区域之间建立虚拟网络对等连接
- 设置区域虚拟网络与本地虚拟网络进行集成
- 配置路由 以通过对等互连访问跨区域资源
迁移后配置和优化
成功迁移到区域虚拟网络集成后,可以利用其他功能和优化:
- 使用高级流量路由配置增强路由功能
- 使用网络安全组 (NSG) 控制出站流量
- 使用用户自定义路由(UDR)通过特定的网络设备引导流量
- 通过 NAT 网关集成获取静态出站 IP 地址并提高 SNAT 端口可用性
- 为 Azure 服务启用 服务终结点
- 使用 专用终结点 连接到 Azure 服务以提高安全性
- 为专用终结点的名称解析设置专用 DNS 区域
故障排除
有关迁移后的常见问题和解决方案,请参阅 排查虚拟网络集成问题。
后续步骤
成功迁移到区域虚拟网络集成后,请浏览以下相关文章:
配置指南:
详细了解应用服务网络:
相关教程:
Azure 网络文档: