exchange系列(六)实现exchange邮件服务器的高可用性

简介:

博主QQ819594300

博客地址:http://zpf666.blog.51cto.com/

有什么疑问的朋友可以联系博主,博主会帮你们解答,谢谢支持!

前言:我们在以前学习过很多种类的群集,例如linux的lvs,haproxy、keepalived等。主要作用就是当服务器发生故障的时候不影响用户的访问,做到高可用以及负载均衡。今天给大家介绍的就是exchange的高可用,当其中一台服务器出现故障,不会影响用户邮件的正常收发。

一、理论部分:

     1、为什么部署服务器的高可用性

         防止服务器突然停机,保证服务的连续性,使服务器实现冗余。

     2、Exchange高可用性技术

         1)通过部署一组服务器实现服务的连续性

         2)对数据进行一定的保护

     3、Exchange Server 2007 的高可用性——CCR

     1)CCR的工作原理

  •    通过群集技术实现

  •    需要先安装故障转移群集

  •    在群集内的安装多个邮箱服务器角色

  •    其他服务器角色只能安装在其他服务器上

  •    服务器级别的故障转移

  •    只能配置两个节点

  •    只有一台服务器进行工作

  •    某一个数据库发生故障则将所有工作转移到群集内的其他节点

wKiom1j5nkvQ-8lZAAI0AfTvoVs420.jpg

2)CCR的缺点

  •    严重浪费服务器资源

  •    一旦出现故障必须转移全部工作

  •    需要另外搭建其他服务器角色(不适合小型企业)

  •    完全依赖故障转移群集

  •    CCR建立在故障转移群集之上

  •    最多支持两个节点

4、ExchangeServer 2010—DAG (Database Availability Groups)

     1)DAG工作原理

  •    数据库级别的故障转移

  •    只转移出现故障的数据库

  •    群集节点可以安装多个Exchange角色

  •    一个DAG最多可以有16个节点

  •    数据库级别的故障转移

  •    不用先部署故障转移群集

  •    只转移出现故障的数据库

  •    可以进行异地备份

  •    通过心跳线进行数据复制

wKioL1j5nlTC97A-AAKo8Py5Kp0806.jpg

wKioL1j5nluxtXfeAAK6B1NTgC0385.jpg

2)DAG的特点

  •    属于数据库级别的容错

  •    只把出现故障的数据库转移到其他节点上

  •    不过多的依赖于故障转移群集

  •    使用了部分功能如见证和心跳线

  •    易于扩展

  •    可以随时添加新的节点

  •    最多可以扩展到16个节点

  •    与其他服务器角色共存

  •    可以再节点上安装多个服务器角色

  •    无需群集的管理经验

  •    因为是在管理控制台(EMC)中进行管理

  •    支持异地备份

  •    可以将两个节点加入到同一个域中,分别建立不同的站点

  •    不需要共享存储

  •    只需要在每个节点本地配置存储即可

  •    连续复制日志

  •    所有的日志都会同步到其他备份节点上

3)DAG安装前的先决条件

  •    DNS服务必须运行

  •    分配给DAG的名称必须不超过15个字符

  •    节点都需要加入到域环境

  •    两个节点均进行Exchange  sp3的典型安装

  •    安装故障转移群集功能

  •    服务器版本必须相同

  •    每个DAG成员具有相同数量的网络

  •    节点必须是典型安装的Exchange sp3

4)注意事项

  •    节点需要配置双网卡

  •    MAPI网络(面向用户)

  •    复制网络(用于心跳线)

  •    见证服务器加入域

  •    见证服务器需要大于等于两个分区

  •    其中一个分区用于存放见证的数据

  •    服务器的版本必须相同

  •    不能混合部署,否则在添加成员是可能会出现错误

5)创建DAG

  •    为Exchange Trusted Subsystem组设置权限

  •    受信任的子系统

  •    让见证服务器管理DAG进行调度

  •    为DAG设置群集的IP地址

  •    添加DAG组的成员

  •    配置DAG的网络

  •    启动Microsoft Exchange信息存储服务

  •    验证DAG的创建是否成功

6)验证数据库的转移

  •    创建一个邮箱

  •    将存在用户的数据库文件删除

  •    观察控制台的变化

  •    在进行收发邮件,看一下是否正常

7)DAG的增量部署、支持异地灾备 。

DAG的增量部署 :

  •    无需事先部署Windows故障转移群集

  •    从“典型安装”的单服务器即可开始部署DAG

  •    随时扩充新节点,最多为16个

  •    节点为偶数时需要见证,为奇数是不需要

  •    添加新的数据库时,必须创建副本否则不能复制

  •    可以直接部署本地存储,无需在部署网络存储

wKiom1j5nmLwaHIhAAJqSNZtVUI326.jpg

二、实验部分

实验案例:DAG实现邮件系统高可用性

1、实验环境和需求描述:

公司现在只有一台exchange2010的典型安装的邮件服务器(存在三个角色:邮箱服务器角色,集线器传输角色和客户端访问角色),现在希望避免单点故障和实现邮箱数据库的冗余,公司决定通过部署双节点的DAG实现Exchange邮件系统的高可用性。

网卡的配置:

MAPI网络(面向用户):192.168.10.0

复制网络(用于心跳线):10.0.0.0

     服务器操作系统均采用windows server 2008r2版本

     需要三台服务器:一台DC/DNS/见证服务器,两个节点服务器(Exchange服务器),已有一台典型安装的服务器还需要再部署一台服务器(典型安装),已有的是mailserver01.benet.com,现在新加入了一台exchange服务器是mailserver02.benet.com。

2、实验思路

1)  准备实验环境

2)  新建数据库可用性组

3)  添加数据库可用性组成员

4)  新建邮箱数据库

5)  添加邮箱数据库副本

6)  验证

3、安装另一台exchange2010的实验步骤

都必须是exchange sp3,否则会出错。

安装exchange2010,这里不再赘述了,如果不会,请参考我的博文:

exchange系列(一)exchange2010邮件服务器的安装与规划

下面正式开始本次的实验:

Exchange部署完成了,接下来开始部署今天的实验配置服务器的高可用性————DAG(Database Availability Groups)数据库可用性组。

虚拟机环境图:

wKioL1j5nmPDl-GsAABC2IjDTZE777.jpg

域benet.com :192.168.10.10

mailserver01  : 192.168.10.20

mailserver02  : 192.168.10.30

DAG虚拟IP   :192.168.10.100

1)首先将三台计算机都关闭计算机,在DC上添加一块硬盘,分一个分区用于存放认证服务器的数据。

wKiom1j5nmfAidYYAAEsg_VtjLE088.jpg

2)两台Exchange服务器在添加一块网卡用于复制数据,添加完成之后进行开机。

wKioL1j5nm2yfRRuAAHzZyLmgKg818.jpg

wKioL1j5nnSw2yUuAAH3fCuykPE972.jpg

3)打开两台服务器的网卡进行配置,mapi网络已经配置好了,不懂动了(使用vm1通信)。

wKiom1j5nneQLgysAAFlLZuLmJQ440.jpg

4)配置新添加的网卡用于复制数据(两块网卡使用VM8通信)。

下图是复制网络(心跳线)网段10.0.0.0

DNS指向域控制器所在的服务器(即DC)。

wKiom1j5nnvBAILCAAFkBJukmg0620.jpg

wKioL1j5noSCGTcjAAK3K_6fnb4639.jpg

wKiom1j5no3hU8vHAALc48rOUHg657.jpg

5)配置WINS,按照下图进行配置

点击上图中的“高级”

wKioL1j5npahwSVzAAK7m5KOkF8085.jpg

wKiom1j5np6yY-ACAALhcs6b8-4418.jpg

6)将mapi网卡的优先级调到最高

wKiom1j5nqDxlM-MAAF4_KVPIp4023.jpg

wKiom1j5nqbhmI8GAAGxr-uYlTA794.jpg

wKiom1j5nq-S0MfPAAJN9PAETwY297.jpg

mailserver02也是一样的操作:

wKioL1j5nrDwdYskAAJBdZyvtLI624.jpg

7)配置见证服务器的存储,这里见证服务器就和域控制器在一起(因为是实验环境,这里只添加40G磁盘空间就可以了)。

分区已经建好(第一步已说了),现在是在分区里面新建一个文件夹叫DAG,这个文件夹用于存放见证服务器的文件。

wKiom1j5nrDBJrIuAAFKEjePxyo970.jpg

8)因为这台DC还是见证服务器,所以需要将Exchange Trusted Subsystem组加入到管理员组,以可以获取相当于管理员的权限,如果不加,那么后面的配置DAG组时可能会出现问题

wKioL1j5nrKCHE_8AAN57MGswFw159.jpg

对“Administrators”右键点击→选择“属性”:

wKiom1j5nrKR5z_UAAH5Vqw-P1Q556.jpg

wKioL1j5nrPwM8AKAAIPoDi7uGE748.jpg

至此,见证服务器就配置完成了。

9)在maiserver01服务器上创建两个邮箱数据库名为mailbox01和mailbox02。

wKiom1j5nrPSTUlIAAD4tzxztv4714.jpg

wKiom1j5nrSDvpEcAAD9jIIR1dM186.jpg

wKioL1j5nrTTTJciAAFWiyVDhr8566.jpg

大家想一想为什么会有两个默认的已建好的数据库(第1个和第2个)和一个已存在的公共文件夹数据库(第5个),这是因为随着Exchange安装就创建好的数据库,那为什么默认的数据库是两个呢,这是因为一个域里面有两台exchange服务器,所以是两个默认的,但是无论怎么样,公共的文件夹数据路只能有一个。

10)邮箱数据库创建好了之后,我们来创建DAG(数据库可用性组)

注:(默认是不存在DAG组的)

wKiom1j5nrTCC2DvAAGAeODVjGk460.jpg

先去看一下DC的完整计算机名称:

wKioL1j5nrXjB0UxAAH1ekMSQ60188.jpg

接着返回到mailserver01这里来:

wKioL1j5nrbgNI6OAAIeeKvjTEk380.jpg

注意:组名称一定要起一个形象一点的,因为这个组名决定了在DNS服务器(即DC)中的FQDN名,我们需要通过这个FQDN名访问OWA客户端系统。

指定见证服务器文件存放的目录,就是刚才创建的目录。

见证服务器其实是起到了一个仲裁的作用,如果上面的那个组没有添加到管理员组,这里是创建不成功的。

wKiom1j5nreifV6XAAE_6fBxLYU302.jpg

11)为DAG组配置IP地址,这里定义为192.168.10.100,需要打开EMShell进行操作,执行下面命令:

wKioL1j5nrejr7uMAABfEKLweW4863.jpg

看不清截图的可以看下面:

Set-DatabaseAvailabilityGroup-Identity DAG

-DatabaseAvailabilityGroupIpAddresses  192.168.10.100

使用命令查看:Get-DatabaseAvailabilityGroup | fl name,*ip*

可以看见DAG组的IP地址:

wKiom1j5nreC91-aAAEeJyc7lcI859.jpg

12)接下来在组中添加成员

wKioL1j5nrjhWOlkAAFi4q5BE44828.jpg

wKiom1j5n6zj6KU9AAFs4m1b2ug747.jpg

wKioL1j5n62hSOd0AAHqFi2kmDk084.jpg

wKioL1j5n62RoGoPAAHBKOibR_A280.jpg

这有个警告是正常的,不用理会,继续下面的操作。

wKiom1j5n67ihgMuAAHnq8yOZqg819.jpg

13)接下来配置DAG组的网络

wKiom1j5n7KSqwrTAAGVEPVfJdU925.jpg

其实默认就可以了,但是我们这里为了提升性能,把不用来复制的其他网络就不让他启用复制功能了,将启用复制的对勾去掉就可以了。

wKiom1j5n7zxgl6hAAG0mm5tEPg991.jpg

确认下图中的服务启动(两台服务器都要启动,否则无法完成复制)

wKiom1j5n7zRnY3PAADmFdjVpBE644.jpg

14)接下来验证一下(三种检验方法)

①可以看见DNS服务器已经将DAG创建了A记录:

wKioL1j5n7zCad3sAAHVHhN4Vi0970.jpg

②在AD用户与计算机中的computers里面可以看见DAG:

wKiom1j5n73DSto7AAIw47NPpPg461.jpg

③可以在群集管理器中,查看存在的节点:

wKioL1j5n7-xOda8AAJ7knH_hog194.jpg

如果上述的三种方法都确认了,则说明创建成功了。

wKioL1j5n7_QYPJxAAH-ae8NjaQ872.jpg

上述的三种方法确认创建成功了。

15)配置第二部分“邮箱数据库的副本”

在配置之前向mailbox01中添加一个用户为user1

wKiom1j5n8Cy1kVdAAGxYr2OYRM987.jpg

wKiom1j5n8Dy26MJAAHQAY5vXLI607.jpg

wKiom1j5oJ2SGzD5AAG_xILrWCo933.jpg

wKioL1j5n8TSvvJnAAGgSPi0-b0121.jpg

创建好了之后为邮箱数据库创建副本:(如果右键点击看不见“添加邮箱数据库副本”几个字,则多按几次F5刷新即可)

wKiom1j5n8XT5q_4AAIBLrEV4BM498.jpg

wKioL1j5n8WTTap7AAGm5OW9TkE295.jpg

wKiom1j5n8aAxpBEAAHOMgMpb2I421.jpg

wKioL1j5n8bxJO-JAAF4k-kxGHw680.jpg

上图中可以看出,mailbox01在mailserver01上是已装入状态,在mailserver02上是正常(在复制完成的时候就可以对副本进行激活)

说明:实际上就是mailserver01为主动,mailserver02为被动,被动已经连接正常,在mailbox02也是完成一样的操作。

wKioL1j5n8axOz8rAAGBvN6ie3Q288.jpg

16)测试DAG

①使用user1通过客户端登录https://DAG.benet.com/owa

wKiom1j5n8fSieV0AAFjSn2gXgw676.jpg

②使用user1登录,给自己发一封邮件进行测试

wKiom1j5n8fSlqbvAAGxXbS_ByA385.jpg

③将邮箱数据库的文件彻底删除掉,来模拟数据库损坏,需要先将数据库卸载掉,因为如果不卸载的话,数据库文件是使用状态下是不能删除的。对mailbox01点击右键卸除数据库库,进入到C:\ProgramFiles\Microsoft\Exchange Server\V14\Mailbox

wKioL1j5n8iD5rbgAAILzeJvAvk031.jpg

我们可以看一下数据库和副本的状态:

wKiom1j5n8nRx60NAAD3tmXKuko647.jpg

现在mailserver01是已卸除状态;mailserver02是正常状态。

现在去

C:\ProgramFiles\Microsoft\Exchange Server\V14\Mailbox删除mailserver01:

wKioL1j5n8mQSUrlAAHWfGlesMM043.jpg

④再对数据库右键进行装入会报错误,提示数据库文件不存在

wKiom1j5n8mi4PaAAAGZrSvbo5I206.jpg

wKioL1j5n8qD54w1AAKXQHTL5zg861.jpg

⑤mailbox01已经在mailserver01上是卸载状态了,但是mailserver02还没有进入到装入状态,是因为这个副本还没有激活,我们对其点击右键进行激活(选择最佳可用性)

wKioL1j5n8rAoG1RAAFi3suArIk638.jpg

wKiom1j5n8vhQZDEAADLlT5cI2M804.jpg

wKioL1j5n8vwDEg7AAJOfIA1crA534.jpg

这时mailserver02就是已装入状态。

⑥我们再登录邮箱看一下是否正常

wKioL1j5pSiQfNe_AAIEOPaRtCg543.jpg

至此,实验完毕了,user1还能正常的发送邮件,这就证明了我们的整个搭建的过程是没有任何问题的。

总结:可以看到始终我们都没有登录到mailserver02上进行操作(除了启动一下服务之外)。

这就说明了,一个站点下在一台服务器上就可以完成所有操作。


本文转自Mr大表哥 博客,原文链接: http://blog.51cto.com/zpf666/1918166    如需转载请自行联系原作者


相关文章
|
负载均衡 网络协议 网络安全