Prateek
Sharma 云 + Enterprise
高级项目经理
Azure SiteRecovery (ASR)可以将Microsoft
Azure用作您的虚拟机的灾难恢复站点。
当管理员考虑向应用程序添加灾难恢复功能时,需要全盘考虑网络基础结构并制定相应计划,以便在停机时间最短的情况下完成故障转移,让用户能够访问应用程序。本文举例说明了如何设置必要的网络基础结构。我们首先介绍应用程序,然后了解如何在内部部署和
Azure 上完成网络设置,最后介绍如何执行测试故障转移和计划故障转移。
1. 应用程序
在本示例中,我们采用一个基于 IIS的两层应用程序,它使用
SQL Server作为后端。
在上图中,有一个名为 Contoso
的组织安装了Active Directory。还有一个两层IIS
Web 应用程序使用 SQL Server作为其后端。SQL
Server 通过 Windows身份验证完成身份验证,所有虚拟机均加入
contoso.com 域。组织内部的办公室用户以及使用移动设备的员工均可访问该应用程序。外出员工使用
VPN 连接到组织网络。
2.内部部署网络
contoso.com的内部部署基础结构由
VMM 2012 R2 Server 管理。系统已经在 VMM
Server 上创建一个名为 Application Network
的基于 VLAN
的逻辑网络,并使用此逻辑网络创建一个名为 Application
VM Network 的虚拟机网络。应用程序中的所有虚拟机均使用静态
IP,因此,还为该逻辑网络定义了静态 IP
池。注意:如果虚拟机配置为使用 DHCP,则不需要静态
IP池。
所有三个虚拟机中,作为 SQL后端的域控制器和IIS前端均加入了上一步骤中介绍的虚拟机网络。下面是指定给每个虚拟机的静态
IP
Active Directory和
DNS – 192.168.0.3SQL后端
– 192.168.0.21IIS前端
– 192.168.0.22
3.Azure网络
阅读Azure虚拟网络概述,了解有关
Azure 虚拟网络的基础知识。系统已经在 Microsoft Azure中创建一个名为
AzureNetwork的 Azure虚拟网络。创建此网络时,内部部署
DNS Server的 IP给定为
DNS Server IP(本例中为 192.168.0.3)。该网络还启用了点到站点连接以及站点到站点连接。
AzureNetwork使用地址范围
10.0.0.0 – 10.0.0.255
需要注意的是,出于两点主要原因,我们使用的地址范围与内部部署地址范围不同:
我们需要使用内部部署网络建立站点到站点连接。S2S网关不能在网络两端使用相同的
IP范围如果内部部署正在运行多个应用程序,而我们希望该功能仅故障转移部分应用程序,而不转移整个子网
注意:如果没有上述两项要求,我们就可以定义与内部部署地址范围完全一致的地址范围。
4.建立站点到站点连接和
AD复制
Azure中的网络应该只是内部部署网络的扩展,以便应用程序能够从一个站点无缝移至另一个站点。Azure可以将站点到站点连接添加到在
Azure中创建的虚拟网络。您可以在创建虚拟网络时添加站点到站点连接,也可以稍后添加。请在创建时参考将站点到站点连接添加到
Azure 虚拟网络的逐步指南。稍后添加站点到站点连接的步骤与此类似。
在两个站点间建立连接后,即可在 Azure中创建Active
Directory和DNS Server。这样可以使在
Azure 中运行的应用程序不必转到内部部署 AD和
DNS来执行每个名称查找和身份验证请求。请按照下述步骤在 Azure中创建
Active Directory:
1. 建议您使用
Active Directory站点和服务在内部部署 Active Directory中为
AzureSite另行创建一个站点
2. 在第
3 步创建的网络上创建 IaaS VM
3. 使用服务器管理器安装
Active Directory域服务和 DNS服务器角色
4. 将服务器提升为域控制器时,指定内部部署域
contoso.com 的名称。IaaS虚拟机应该能够将
contoso.com解析为 DNS,就像在第
3 步我们指定内部部署 DNS服务器的
IP一样
5. 在名为
AzureSite的 Active Directory站点(如果已创建)中添加此活动目录
因为已经在Azure中运行一个
DNS服务器,因此从现在起,最好为已经创建的 IaaS
虚拟机使用此服务器。为此,我们转到 AzureNetwork
并修改 DNS
服务器 IP以提供在上一步创建的虚拟机的
IP。
AD复制频率:可以使用Active
Directory 站点和服务更改DNS记录复制的频率。您可以按照本文说明在
Active Directory 站点之间安排复制
是否必须将 Active Directory和
DNS复制到 Azure?如果正在制定应对全面站点灾难的计划,就必须将
Active Directory 复制到 Azure。但如果您预计要在某一时刻仅对部分应用程序执行计划故障转移,并且应用程序与
Active Directory 和 DNS的通信不太频繁,您也可以选择不将
Active Directory和 DNS复制到
Azure。在这种情况下,您可以在从 Azure
创建的网络中提供内部部署 DNS服务器的
IP。
5. 建立点到站点连接
在应用程序故障转移至 Azure后,我们希望它仍支持使用移动设备的员工访问。要实现这一目标,我们需要创建到
AzureNetwork的点到站点连接。链接中的文章提供了建立到
Azure 虚拟网络的点到站点 VPN连接的逐步指南。建立此连接后,网络环境将如下图所示:
6. 创建测试网络
Azure SiteRecovery为您提供了执行测试故障转移的功能,不会影响生产工作负荷。为此必须另外创建一个
Azure 虚拟网络。创建另一个网络并使用在第 3
步创建的网络所使用的相同 IP
范围。我们将这个网络称为 AzureTestNetwork。只是不要在网络中添加站点到站点连接和点到站点连接。
7. 设置
Azure SiteRecovery
现在,我们已经完成了基础结构设置,之后必须在
ASR 中完成下列步骤:
1. 配置云
2. 将“Application
VM Network”映射到 AzureNetwork
3. 为下列服务开启保护
1. Active Directory
–尽管我们在生产环境中使用 AD复制功能将
AD复制到 Azure,我们在测试故障转移过程中还需要一个
AD 实例。这就是我们还需要使用 ASR在
AD上开启保护的原因。在测试故障转移中将如何使用 AD的内容将在本文稍后的第
9节中介绍
2. IIS前端
3. SQL后端
因为ASR入门指南和ASR部署指南已经对这些步骤做了详细阐释,本文不再赘述。完成此项设置后,网络环境将如下图所示:
8. 创建恢复计划
我们在创建恢复计划时,需要添加 IIS前端和
SQL后端这两个虚拟机。然后自定义恢复计划,方法是添加另一个组,并将虚拟机
IIS 前端移动到第 2组中。我们希望首先故障转移
SQL后端虚拟机,再启动 IIS前端虚拟机,以便能够成功启动
IIS应用程序。恢复计划应如下所示:
9.
执行测试故障转移或灾难恢复演习
组织必须定期执行测试故障转移或灾难恢复演习,检查灾难恢复措施是否完备以及是否满足合规性需求。ASR为您提供了执行测试故障转移的功能,不会影响生产工作负荷。执行测试故障转移或灾难恢复演习时,我们将使用第
6 步中的测试网络。我们将按照下述步骤执行灾难恢复演习:
1. 转到
ASR中的 AD虚拟机并在
AzureTestNetwork中执行测试故障转移
2. 在
AzureTestNetwork中为 AD创建
IaaS虚拟机后,请检查为此虚拟机提供的 IP
3. 如果
IP 与指定给 AzureTestNetwork的
DNS的 IP不同,请将
DNS IP修改为 AD VM已获取的
IP。Azure将从虚拟网络中定义的
IP范围的第 4个
IP开始指定 IP。如果网络中添加的
IP 范围为 10.0.0.0 – 10.0.0.255,则此网络中创建的第一个虚拟机的
IP 将为 10.0.0.4。因为
AD 将是灾难恢复演习中要执行故障转移的第一个虚拟机,您可以预测该虚拟机将要得到的 IP,并相应地将其添加为
AzureTestNetwork 中的 DNS IP
4. 转到在第
8步中创建的恢复计划并在 AzureTestNetwork中执行测试故障转移。当虚拟机在
Azure中进行故障转移并启动时,便会访问已在AzureTestNetwork中完成故障转移的
DNS服务器并进行注册。此后,AzureTestNetwork中运行的
AD-DNS VM将对恢复计划中的两个虚拟机使用更新后的 IP。注意,即使虚拟机之前使用静态
IP,此 IP也可能与内部部署
IP不同
5. 在
AzureTestNetwork中创建 IaaS虚拟机
6. 现在,应该能够使用http://iisfrontend/从此
IaaS VM访问 IIS应用程序
7. 完成测试后,您可以从
ASR中的“作业”视图将测试故障转移标记为完成。这将删除在
AzureTestNetwork 上创建的虚拟机
10.执行计划故障转移
为了执行应用程序的计划故障转移,我们需要转到在第 8步创建的恢复计划,然后执行计划故障转移。完成计划故障转移并在
Azure中启动虚拟机后,虚拟机将访问运行 DNS的
Azure服务器并更新其IP。新
IP 将按可能已经在第 4步设置的频率传播至在内部部署中运行的
DNS。通过转到 Active Directory
站点和服务并展开一个站点、然后展开域控制器然后是 NTDS设置,您还可以选择执行按需复制
DNS记录。右键单击 NTDS设置可以选择选定域控制器的复制目标和来源:
复制DNS记录并且
DNS记录的生存期 (TTL)过期后,应该能够从内部部署客户端访问应用程序,或者使用
P2S VPN 从连接至 AzureNetwork
的客户端访问应用程序:
在本文中,我们回顾了如何为基于 IIS 的两层 Web 应用程序(使用 SQL Server 作为其后端)设置灾难恢复。我们介绍了如何设置域控制器和 DNS 来执行灾难恢复演习或计划故障转移。此外,我们还了解了如何使用 Azure 虚拟网络建立站点到站点和点到站点连接,使最终用户即使在发生故障转移后仍能无缝访问应用程序。
如果您有其他问题,请访问 MSDN 上的 Azure 论坛,获取更多信息并与其他客户交流互动。
您还可以查看其他产品信息,也可以注册获取免费 Azure 试用,开始通过 Azure Site Recovery 试用 Microsoft Azure。
如果你有任何疑问,欢迎访问MSDN社区,由专家来为您解答Windows
Azure各种技术问题,或者拨打世纪互联客户服务热线400-089-0365/010-84563652咨询各类服务信息。