DAG
新组件
DAG(Database Availability Group)即数据库可用性组,是内置在 Microsoft Exchange Server 中的邮箱服务器高可用性和站点恢复框架的基本组件。 DAG 是一组邮箱服务器(最多可包含 16 个邮箱服务器),其中承载了一组数据库,可提供从影响单个服务器或数据库的故障中自动执行数据库级恢复的功能。
基本简介
DAG 是邮箱数据库复制、数据库和服务器切换和故障转移以及名为“活动管理器”的内部组件的边界。运行于每个邮箱服务器上的活动管理器,在 DAG 中管理切换和故障转移。
DAG 中的任何服务器可以承载来自 DAG 中任何其他服务器的邮箱数据库副本。将服务器添加到 DAG 后,此服务器与 DAG 中的其他服务器协同工作,提供从影响邮箱数据库的故障(如磁盘、服务器或网络故障)中自动执行恢复的功能。
CCR与SCR合并,并已发展成为一个更加统一的高可用性架构,这其中,DAG成为基本的组成部分。也就是说,不论是部署本地级还是站点级的高可用性和灾难可恢复解决方案,都要用到DAG。
Exchange 2010中,保护邮箱数据库的唯一方法也是使用DAG。DAG的主要组成部分是一种称为主动管理器(Active Manager)的新组件。Exchange 2007及早期版本中的Exchange群集资源DLL(exres.dll)和相关的群集服务资源,如今已被取代。现在,Exchange 2010使用主动管理器来管理DAG中邮箱服务器间的数据交换和故障切换。主动管理器运行在给定的DAG中的所有邮箱服务器上,它有两个角色:主要主动管理器(Primary Active Manager,PAM)和备用主动管理器(Standby Active Manager,SAM)。
仲裁模式
每个 DAG 下均有一个 Windows 故障转移群集。故障转移集群使用仲裁概念,即利用投票者的共识来确保一次只有一部分群集成员(这可以指所有成员或大部分成员)在运行。仲裁并不是 Exchange Server的新概念。Exchange 早期版本中的高可用性邮箱服务器同样使用故障转移群集及其仲裁概念。仲裁代表一个成员和资源的共享视图,仲裁一词也用于描述代表在所有群集成员间共享的群集中的配置的物理数据。因此,所有 DAG 都要求其基础故障转移群集具有仲裁。如果群集丢失仲裁,则所有 DAG 操作都将终止,DAG 中托管的所有装入数据库都将卸除。在这种情况下,需要管理员干预以更正仲裁问题并恢复 DAG 操作。
仲裁对于确保一致性,充当用于避免分区的关系断开裁判,以及确保群集响应能力而言非常重要:
具有偶数个成员的 DAG 使用故障转移群集的节点和文件共享多数仲裁模式,该模式采用外部见证服务器充当关系断开裁判。在此仲裁模式中,每个 DAG 成员都将获得一票。此外,还将使用见证服务器向某个 DAG 成员提供一份权重投票(例如,获得两投票而不是一份)。默认情况下,群集仲裁数据存储在每个 DAG 成员的系统磁盘中,并且在这些磁盘间保持一致。但是,仲裁数据的副本并不存储在见证服务器上。见证服务器上的一个文件用于记录哪个成员拥有最新的数据副本,但见证服务器没有群集仲裁数据的副本。在此模式中,大多数的投票者(DAG 成员加上见证服务器)必须工作正常并且能够相互通信以保留仲裁权。如果大多数投票者不能相互通信,则 DAG 基础群集将失去仲裁权,并且 DAG 需要管理员干预才能恢复正常工作。
具有奇数个成员的 DAG 使用故障转移群集的节点多数仲裁模式。在此模式中,每个成员将获得一票,且每个成员的本地系统磁盘用于存储群集仲裁数据。如果 DAG 配置发生更改,此更改将反映在不同磁盘上。仅当更改发生在一半(向下舍入)加一数目的成员的磁盘上,该更改才会被视为已提交并永久保存。例如,在五个成员的 DAG 中,更改必须发生在二加一个成员上,即共三个成员上。
仲裁要求大多数投票者能够相互通信。请考虑具有四个成员的 DAG。因为此 DAG 具有偶数个成员,所以使用外部见证服务器向其中一个群集成员提供第五个决定性投票。为了保留大多数投票者(进而保留仲裁权),至少必须有三个投票者能够相互通信。任何时候,在不中断服务以及数据访问的前提下,最多有两个投票者可以处于脱机状态。如果有三个或更多个投票者脱机,DAG 将失去仲裁权,且服务和数据访问将中断,直至问题解决。
特点
对Windows故障转移群集的有限依赖:
DAG仅使用了Windows故障转移群集组件提供的有限的一部分群集功能。DAG使用群集数据库、群集心跳(Cluster heartbeat)及文件共享见证(File Share Witness,FSW)功能。在Exchange 2007及早期版本中,Exchange是一个由Windows故障转移群集操作的应用程序。而在Exchange 2010中,情况发生了变化,Windows故障转移群集注册时所创建的Exchange群集资源DLL及所有群集资源,已从Exchange 2010代码中移除。
增量部署:
DAG仍使用Windows故障转移群集组件(如群集数据库、心跳和文件共享见证功能),因此需要Windows Server 2008 SP2版或R2企业版环境,以便能够对DAG中的Exchange 2010邮箱服务器进行配置。但Exchange 2010支持增量部署方式,也就是说不需要在安装Exchange 2010之前形成群集。用户可以安装Exchange 2010邮箱服务器,然后创建一个DAG并在必要时将数据库和服务器添加到其中。
与其他Exchange角色共存:
使用CCR时,用户不能在邮箱服务器(群集节点)上安装受CCR保护的Exchange服务器。使用DAG时,DAG中的邮箱服务器还可以安装其他Exchange角色。这个特点对于小型组织非常有利。这是因为受DAG保护的邮箱服务器可以与其他Exchange角色并存。这也意味着用户可以使用两台机器作为专用Exchange服务器,以提供一个完全的冗余解决方案。当然,这需要配置文件共享见证,这一点在用户环境中很容易实现。文件共享见证不需要运行相同版本的Windows,只要运行Windows Server 2003或更高版本即可。另外一点需要注意的是:如果用户使用两台Exchange 2010服务器,并且希望得到一个完全的冗余解决方案,则必须使用基于负载均衡解决方案的外部硬件或软件,以便提供客户端访问服务。
完全通过Exchange工具管理:
在Exchange 2007中使用CCR时,必须使用Exchange和群集管理组合工具来配置和管理CCR群集。在Exchange 2010中使用DAG时,不必使用群集管理工具进行任何初始配置和管理,企业内部的Exchange管理员也不再需要有群集管理的经验。
数据库级的复制:
为了支持DAG的新功能,Exchange 2010数据库已迁移到组织级,而不是Exchange 2007或早期版本的服务器级。Exchange 2010中不存在存储组的概念。现在,每个数据库都有一个日志流与数据库相关联。CCR的一个缺点是:如果主动节点的一个数据库出现故障,群集邮箱服务器上现有的所有活动数据库的故障都将转移到被动CCR节点。如果这个节点上的用户有邮箱存储于各自的群集邮箱服务器(Cluster Mailbox Server,CMS),他们都将受到影响。
每个DAG支持多达16个成员:
同Exchange 2007相比,Exchange 2010可以支持更多的邮箱数据库,用户最多可以添加16个邮箱服务器到一个DAG,并可能保存16个邮箱数据库副本。因此,Exchange 2010企业版支持的邮箱数据库最高限额已从50个上调至100个。但标准版目前仍然只支持每个邮箱服务器最多5个数据库。
切换/故障转移较以前更为快速:
有赖于Exchange 2010 DAG的改进,现在,邮箱数据库副本间的切换/故障转移更为快速。同Exchange 2007下采用CCR动辄就需要数分钟相比,目前所用时间往往在30称之内。此外,由于Outlook MAPI客户端连接客户端访问服务器的RPC客户端访问服务,因此最终用户很少会注意到切换或故障转移的发生。
3个以上数据库副本时无需备份
当一个邮箱数据库拥有3个或更多副本时,程序设计为无需用户备份。也就是说当依次循环登录受DAG保护的邮箱数据库时,不再需要执行备份操作。
支持位于不同活动目录站点的DAG成员:
与CCR群集节点不同,DAG成员服务器可以位于不同的活动目录站点。但是应当注意,不能把受同一个DAG保护的邮箱服务器放置在活动目录森林的不同域内。
通过TCP传送日志:
在Exchange2007中,Microsoft Exchange复制服务通过服务器消息块将日志文件复制到被动数据库副本(LCR)、被动群集节点(CCR)或SCR目标,这就意味着用户需要打开CCR群集节点(通常是在部署多站点CCR群集时)与SCR源或SCR目标之间防火墙的445端口。利用Exchange 2010 DAG,异步复制技术不再依赖服务器管理块。Exchange 2010使用TCP / IP协议进行日志文件复制和播种(注:播种,即Seed。在 CCR 环境中安装被动节点时,每个存储组及其数据库都将从主动节点复制到被动节点,该操作称为播种),甚至可以指定端口用于日志文件复制。默认情况下,DAG使用64327端口,当然,也可另外指定其他端口。
日志文件压缩:
利用Exchange 2010 DAG,在一个DAG内的一个或多个网络间播种或复制时可以启用压缩功能。这是DAG本身的特性,而不是DAG网络的特性。默认设置为InterSubnetOnly,进行网络加密属性设置时也使用相同的值。
日志文件加密:
Exchange 2010 DAG增加了对加密的支持,而在Exchange 2007中,除非已配置IPsec,否则日志文件将通过一个非加密通道复制。具体地说, DAG使用Windows Server 2008的加密功能,也就是说,DAG使用每个邮箱服务器成员之间的Kerberos身份验证网络加密是对DAG本身而言的,而不是针对DAG网络。DAG网络加密属性选项有:禁用(不使用网络加密),启用(网络加密用于DAG中所有网络的播种和复制),InterSubnetOnly(默认设置,网络加密用于同一子网内的DAG网络),以及SeedOnly(网络加密用于DAG中所有网络的播种)。
副本最多允许滞后14天:
Exchange 2007 SP1的备用连续复制引入了滞后数据库副本的概念。有了这项功能,用户可以指定在重播已复制到 SCR 目标计算机的日志文件之前,Microsoft Exchange 复制服务应等待的时间。用户还可以使用另一个参数截断滞后时间 (Truncation Lag Time),用于指定在截断已复制到 SCR 目标计算机并已重播到数据库副本的日志文件之前,Microsoft Exchange 复制服务应等待的时间。利用这两个选项,我们可以指定一个长达7天的时间差距。而通过Exchange 2010 DAG,用户可以指定最多14天的截断滞后时间。
从数据库副本播种:
Exchange 2007中的CCR不同,现在,用户可以通过指定一个数据库副本作为源数据库来执行播种。这就意味着,现有邮箱数据库的播种或重播操作不再对活动数据库副本产生影响。
公用文件夹数据库不受DAG保护:
Exchange 2007的CCR不同,用户不能使用DAG保护公用文件夹数据库,而必须使用传统的公共文件夹的复制机制对其加以保护。但在这方面也做了一些改进:如果公用文件夹存储于DAG成员服务器上,Exchange 组织中只有一个公用文件夹存储的限制被取消。
改进的传输转储程序:
传输转储程序也有所改进,甚至受损数据库在位于不同活动目录站点的数据库副本间进行故障转移时,信息都可以重新递送。除此之外,当所有信息都被复制到数据库副本时,它们将从传输转储程序中被删除。
配置
1、 创建数据库可用性组;
2、 添加数据库可用性组成员;
3、 新建邮箱数据库
4、 添加邮箱数据库副本
创建 DAG
DAG 创建方法是在ExchangeNew-DatabaseAvailabilityGroupcmdlet。
创建 DAG 时,请提供 DAG 名称、可选见证服务器和见证目录设置。此外,还可以为 DAG 分配一个或多个 IP 地址,方法为使用静态IP地址,或使用动态主机配置协议 (DHCP) 为 DAG 自动分配必要的 IP 地址。 可以使用_DatabaseAvailabilityGroupIpAddresses_参数将 IP 地址手动分配给 DAG。如果省略此参数,DAG 会尝试使用网络中的 DHCP服务器来获取 IP 地址。
如果要创建将包含运行 Windows Server 2012 R2 的邮箱服务器的 DAG,则还可以选择不使用群集管理访问点来创建 DAG。在这种情况下,群集在 Active Directory 中将不会有群集名称对象 (CNO),群集核心资源组也不会包含网络名称资源或 IP 地址资源。
创建 DAG 时,将在 Active Directory中创建一个空对象,以代表具有指定名称且对象类为msExchMDBAvailabilityGroup的 DAG。
Dag 使用 Windows Server 2008 R2 或更高版本中的 Windows 故障转移群集技术的子集,如群集检测信号、群集网络和群集数据库(用于存储更改或可以快速更改的数据,例如数据库状态从活动更改为被动或反向,或从已安装到已卸除或反向。因此,只能在包含 Windows 故障转移群集的受支持的 Windows 版本上安装的 Exchange 邮箱服务器上创建 Dag。
见证服务器和见证目录
创建 DAG 时,需要为 DAG 指定一个不超过 15 个字符且在Active Directory 林中唯一的名称。此外,每个 DAG 都会配置有见证服务器和见证目录。仅当 DAG 中成员数为偶数时,才使用见证服务器及其目录,且只能用于仲裁目的。无需提前创建见证目录。Exchange 会在见证服务器上自动创建并保护见证目录。见证目录不得用于除 DAG 见证服务器之外的其他任何目的。
见证服务器的要求如下:
无论将哪个服务器用作见证服务器,如果在预期的见证服务器上启用了 Windows 防火墙,必须为文件和打印机共享启用 Windows 防火墙例外。见证服务器使用 SMB 端口 445。
见证服务器放置注意事项
DAG 的见证服务器放置将取决于业务需求和组织的可用选项。Exchange 现在包含对在 Exchange 2010 中不建议或无法使用的新 DAG 配置选项的支持。这些选项包括使用第三个位置,如第三个数据中心、分支机构或 Microsoft Azure虚拟网络
下表列出了不同部署方案中见证服务器放置的常规建议。
在两个数据中心内部署 DAG 后,现在可以使用第三个位置来承载见证服务器。如果组织具有带有网络基础结构的第三个位置,且该网络基础结构与影响部署了 DAG 的两个数据中心的网络故障分离开来,则可以在此第三个位置部署 DAG 的见证服务器,从而将 DAG 配置为可以自动将数据库故障转移到其他数据中心,以响应数据中心级别的故障事件。如果您的组织只有两个物理位置,则可以使用 Microsoft Azure 虚拟网络作为放置见证服务器的第三个位置。
测试
在完成上面的配置后就可以使用OWA对配置的数据库可用性组进行测试。测试的方法:
1、 将邮箱服务器MAIL或MAIL2关机,例如将邮箱服务器MAIL关机
2、 使用在MAIL邮箱服务器中创建数据库的用户。
3、 用户登录,查看是否可以访问自己的数据。
管理说明
数据库可用性组 (DAG) 是一组(最多 16 台)Microsoft Exchange Server 2010 邮箱服务器,提供从数据库、服务器或网络故障中自动执行数据库级恢复的功能。DAG 使用连续复制和 Windows 故障转移群集技术的子集以提供高可用性和站点恢复。DAG 中的邮箱服务器相互进行故障监视。邮箱服务器添加到 DAG 后,它会与 DAG 中的其他服务器协同工作,提供从数据库故障中自动执行数据库级恢复的功能。
操作
创建 DAG 时,DAG 最初是空的,并且会在 Active Directory 中创建一个目录对象以代表 DAG。目录对象用于存储 DAG 的相关信息,比如服务器成员身份信息。将第一个服务器添加到 DAG 时,将为 DAG 自动创建故障转移群集。此外,还将启动监视服务器的网络或故障的基础结构。然后,使用故障转移群集检测信号机制和群集数据库来跟踪和管理有关 DAG 可能快速更改的信息,比如数据库装入状态、复制状态和最后装入位置。
参考资料
数据库可用性组.Microsoft官网.
最新修订时间:2024-03-09 01:08
目录
概述
基本简介
参考资料