我们已经部署了两台Exchange2010的CAS/HUB服务器,现在要把两台CAS服务器合并为一个CAS阵列。在Exchange2003时代,用户可以直接访问Exchange的邮箱服务器。但是从Exchange2007开始,用户就不能直接访问邮箱服务器了,用户必须访问CAS服务器才可以连接到自己的邮箱。这样CAS服务器就成为用户访问Exchange服务器所必须面对的一个前台接待。一旦CAS服务器出现问题,用户访问Exchange服务器就会立刻遇到问题,要避免这种故障,比较有效的方法就是把多台CAS服务器组成一个CAS阵列,这样就可以起到负载平衡及容错的作用。
首先我们要在两台CAS/HUB服务器上配置负载平衡。负载平衡(NLB)对很多朋友来说并不陌生,微软的很多服务器都使用了NLB技术。NLB需要在主机之间传递心跳信号,那么我们需要在服务器上配置使用两块网卡,一块网卡传递心跳信号,一块网卡用于生产环境。其实考虑到心跳信号数据量并不大,因此一块网卡身兼两职也是可以的。本次环境中我们就只使用了一块网卡。
创建Windows NLB群集
使用Exadmin账户登陆到BJEX01服务器上,运行“NLBMGR”。打开网络负载平衡管理器,点击“群集”菜单,选择“新建”。
在窗口中,主机输入框中键入localhost或本机IP,点击“连接”,选择LAN网卡后,点击“下一步”
继续点击下一步
点击“添加”,输入NLB的IP信息,点击“确认”,点击“下一步”。
添加完整Internet名称:mail.contoso.com,选择“单播”模式,点击“下一步”
注:NLB 支持三种操作模式。
单播。在每个群集成员上,NLB 覆盖网络适配器上制造商提供的 MAC 地址。NLB 对所有成员都使用相同的单播 MAC 地址。这种模式的优点是它可以无缝地与大多数路由器和交换机协同工作。缺点是到达群集的流量会扩散到交换机虚拟 LAN (VLAN) 上的所有端口,并且主机之间的通信不能通过 NLB 绑定到的适配器。
多播NLB 保留原厂 MAC 地址不变,但是向网络适配器中增加了一个第 2 层多播 MAC 地址。所有入站流量都会到达这个多播 MAC 地址。优点是这种方法可以通过在交换机的“内容可寻址存储器”(CAM) 表中创建静态项,从而使得入站流量仅到达群集中的主机。当然,这种方法也有缺点,因为 CAM 项必须静态关联一组交换机端口。如果没有这些 CAM 项,入站流量仍然会扩散到交换机 VLAN 上的所有端口。还有一个缺点就是很多路由器不会自动将单播 IP 地址(群集的虚拟 IP 地址)与多播 MAC 地址关联起来。如果进行静态配置的话,一些路由器可以存在这种关联。
IGMP 多播 (Windows Server 2003)。就像多播操作模式一样,NLB 保留原厂 MAC 地址不变,但是向网络适配器中增加了一个 IGMP 多播地址。此外,NLB 主机会发出这个组的 IGMP 加入消息。如果交换机探测到这些消息,它可以使用所需的多播地址来填充自己的 CAM 表,这样入站流量就不会扩散到 VLAN 上的所有端口。这是这种群集模式的主要优点。缺点是有一些交换机不支持 IGMP 探测。除此之外,路由器仍然支持单播 IP 地址到多播 MAC 地址的转换。
工作在单播模式下的NLB可以在所有网络环境下正常运行(兼容性最好),但是由于它的工作特性,具有以下两个限制:
1.由于NLB所使用的群集MAC地址没有绑定在某个具体的交换机端口上,所以所有的NLB通讯均通过在交换机的所有端口上广播进行,而不管此端口是否连接了NLB节点,这造成了额外的网络流量负担;
2.由于所有的NLB节点具有相同的MAC地址,NLB节点之间不能通过自己原有的专用IP地址进行通讯。 (例如我们见得最多的就是节点之间就无法ping通)
工作在多播模式下,NLB不会修改NLB节点启用NLB的网络适配器的MAC地址,而是为
它再分配一个二层多播MAC地址专用于NLB的通讯(此MAC地址称为群集MAC地址),这样NLB节点之间可以通过自己原有的专用IP地址进行通讯。但是在多播模式中,NLB节点发送的针对群集IP地址/MAC地址ARP请求的ARP回复会将群集IP地址映射到多播MAC地址,而许多路由器或者交换机(例如,思科的某些产品)会拒绝这一行为。如何解决呢?方法是手工在路由器或交换机上添加静态映射,将群集IP地址映射到群集的多播MAC地址。
点击“完成”
关于配置NLB端口,参考以下链接:
确认Windows NLB群集创建成功
确认主机状态为已聚合,证明Windows NLB群集创建成功
将BJEX02加入到Windows NLB群集
使用Exadmin账户登陆到BJEX01服务器上,运行“NLBMGR”。点击群集名称mail.contoso.com,选择“添加主机到群集”
在窗口中,主机输入框中键入第二台CAS/HUB的IP“10.2.2.164”,点击“连接”,选择LAN网卡后,点击下一步
点击下一步
点击“完成”。
确认加入到Windows NLB群集中成功
确认主机状态为已聚合,证明加入到Windows NLB群集中成功
最后我们需要创建一个CAS阵列,其实就是让Exchange2010服务器支持负载平衡。
创建CAS阵列
使用Exadmin账户登陆到BJEX01服务器上,运行Exchange Mangement Shell(EMS)命令行,在EMS中运行:
New-clientaccessarray -fqdn mail.contoso.com -name CASarray.contoso.com -site Beijing
其中的mail.contoso.com是Exchange服务器CAS阵列的完全合格域名,CASarray.contoso.com是CAS阵列的阵列名称,Beijing是Active Directory的站点名称。
注:为了实现访问邮箱的故障转移自动切换,需要在CAS的NLB建立后,MBX角色建立前在CAS服务器上创建 CAS Array