Microsoft Exchange Server 2016 是一个电子邮件服务器解决方案(具有日历和联系人管理器),它支持不同的客户端,例如 Outlook、Web 浏览器和移动设备。
Exchange Server 解决方案优势
NSX Advanced Load Balancer 解决方案为 Exchange 部署提供以下优势:
横向缩放:您不必由于流量突然激增而措手不及。NSX Advanced Load Balancer 可以扩展和缩减其称为服务引擎 (SE) 的数据平面引擎,以动态调整负载均衡器基础架构的容量。
分析和可见性:分析和可见性在解决问题和评估可能影响最终用户体验的风险方面发挥着重要作用。与其他 ADC 供应商不同,NSX Advanced Load Balancer 提供端到端计时图表,从而查明客户端、ADC 和服务器分段的延迟分布情况。NSX Advanced Load Balancer 了解服务器的资源利用率,将其与观察到的性能相结合,并以运行状况分数形式提供结果。通过查看运行状况分数,您可以判断当前的最终用户体验以及来自资源利用的风险。
易于使用的 SSL 分流和管理:只需选择 NSX Advanced Load Balancer 的在所有位置使用 SSL,并导入一个证书。其余工作由 NSX Advanced Load Balancer 完成。您不必转换证书并配置多项内容以确保 Exchange 安全。其他重要优势包括 SSL 计算负载分流和 HTTP 可见性。特别是,SSL 计算负载分流可以减少 CAS 单元数和相关的许可证成本。通过在 NSX Advanced Load Balancer 上终止 SSL,您可以充分利用创新分析和可见性引擎。
云优化的部署和高可用性:NSX Advanced Load Balancer 控制器 自动发现可用的资源,例如虚拟基础架构中的网络和服务器。这样,IT 管理员不太容易出现人为错误。此外,在 NSX Advanced Load Balancer 控制器 的 SE 或 Hypervisor 出现问题时,它会检测到该问题;它自动查找可用的最佳 Hypervisor 并启动 SE 以进行恢复。与其他 ADC 解决方案不同,此方法不需要冗余设备。
部署架构
Exchange Server 2016 具有两个服务器角色(客户端访问服务器 (CAS) 和邮箱服务器),它们分别包含 CAS 阵列和 DAG(数据库访问组)以实现高可用性并提高性能。CAS 提供客户端协议、SMTP 和统一消息调用路由器。客户端协议包括 HTTP/HTTPS 和 POP3/IMAP4。UM 调用路由器将 SIP 流量重定向到邮箱服务器。
需要使用外部负载均衡器才能建立 CAS 阵列。与 CAS 阵列不同,DAG 不需要使用外部负载均衡器。服务器可以同时担任客户端访问和邮箱角色。
CAS 提供以下需要负载均衡的服务:
Outlook Anywhere |
它使 Outlook 客户端能够连接到 Exchange 服务器。它使用通过 HTTP(S) 的 RPC。 |
Outlook Web Access |
它使任何 Web 浏览器能够连接到 Exchange Server,从而在浏览器上提供类似于 Outlook 客户端的体验。 |
Exchange Web 服务 |
它使客户端应用程序能够与 Exchange 服务器进行通信。EWS 可以访问通过 Microsoft Outlook 提供的很多相同数据。 |
Exchange 管理中心 |
它为 Exchange Server 提供一个基于 Web 的管理控制台。 |
Exchange 管理 Shell |
它支持通过 HTTP(S) 的远程管理,以执行可以由 Exchange 管理中心执行的每项任务。 |
ActiveSync |
它使移动设备(例如 iPhone 和 Android 设备)能够与 Exchange Server 之间同步邮件、日历、联系人和任务。 |
AutoDiscover |
它使客户端应用程序(例如 ActiveSync 应用程序或 Outlook)能够使用最少的用户信息配置自身。在使用 AutoDiscover 服务时,使用用户的电子邮件地址和密码就足以找出其余配置信息。 |
脱机通讯簿 |
它使处于缓存 Exchange 模式的 Outlook 客户端能够在脱机时查找地址。 |
POP3/IMAP4 |
它使第三方电子邮件客户端能够从 Exchange Server 下载电子邮件。SMTP 用于发送电子邮件。 |
SMTP |
它使第三方电子邮件客户端能够将 Exchange Server 作为发送电子邮件服务器。POP3/IMAP4 用于接收电子邮件。 |
MAPI |
它调用与某些消息传送服务器交互的 MAPI 子系统例程,以使客户端程序能够启用、识别或基于(电子邮件)消息传送。 |
为 Exchange 设置负载均衡
Exchange 2016 系统要求 Microsoft Technet 文章指定了设置 Exchange Server 2016 的要求。
此处,在具有 8 核 CPU、8 GB RAM 和 100 GB 磁盘容量的虚拟机上启动 Windows 2012 Server(使用 2012 iso)。(理想情况下,磁盘必须分区为 4 个驱动器:操作系统、日志、Exchange 安装目录和数据库。)
然后,需要在 Windows 2012 Server 上安装 Exchange Server 2016。可以使用 Outlook 凭据(个人)免费获得 180 天的 Exchange Server 许可证。可以从以下位置中获取该许可证:Microsoft Exchange Server 2016 产品页面、Microsoft Exchange Server 2016 下载页面。
对于 Exchange 2016 Server,服务器具有静态 IP 是一个必备条件。
在安装 Exchange 2016 之前,必须先安装必备组件,否则,2016 的 setup.exe 文件将失败并出现多个错误。可以使用 Windows PowerShell 从创建的 2012 Server 虚拟机中安装相同的内容。在安装后,需要重新引导服务器。.NET 4.5 支持(理想情况下,您需要使用 4.5.2,但在运行 setup.exe 后,它自动升级到 4.5.2。)桌面体验 Internet 信息服务 (IIS) Windows 故障切换集群。
在重新引导后,安装 Unified Communications Managed API (UCMA) 4.0 运行时:下载页面
如果选择的服务器是 2012 RTM,还需要安装 Windows Management Framework 4.0:下载页面
使用 PowerShell 在 Exchange Server 上安装 Active Directory 远程服务器管理工具插件。
按照以下文章中所述的步骤安装 Active Directory:设置 Active Directory 实验室(第 1 部分)。
要注意的一个重要步骤是,NSX Advanced Load Balancer 中的“系统设置”下面的 DNS 解析器必须指向 Active Directory 安装期间设置的本地 DNS 服务器。在这种情况下,AD、Exchange 2016、DNS 和 IIS 安装在一台服务器上。
从上面的链接中,我们需要确保具有一个客户端计算机,它可能是我们创建的域(此处为 avitest.com)的一部分,并确保我们在 Active Directory 中创建的用户可以登录到相同的域。出于测试目的,选择了一个 Win7 测试计算机以作为客户端计算机(通过 Windows 7 iso 生成的虚拟机),将其作为 avitest.com 域的一部分,并在 AD 中为来自客户端计算机的所述测试用户配置了凭据。
在客户端计算机成为该域的一部分后,切换到 2016 安装程序文件所在的 2012 Server PowerShell 提示符,然后配置 Active Directory 以接收 Exchange 2016。Exchange 架构版本必须为 15317。请使用 ADSI 编辑器以验证该版本。
现在可以执行 2016 的 setup.exe,我们需要为其设置邮箱规则。
在设置后,可以使用 https://servername/ecp 浏览 ECP(此处,服务器名称是 lab-dc01)。
由于这是一个仅实验室的环境,我们需要跳过用于外部和内部访问的拆分 DNS 的命名空间部分。此处,将所有 Exchange 服务的内部和外部主机名保持相同,即 lab-dc01.avitest.com。(需要从 ECP 登录中完成与上面相同的操作。)
无法在浏览器中通过 ECP 配置 MAPI 和自动发现服务,需要通过 Exchange 管理 Shell 配置这些服务。
登录到 Exchange 管理中心并为服务器创建自签名证书。将相同内容导出到桌面,就像在我们创建的 VS 中导入一样。
需要将自签名证书分配给 IIS 服务。
使用 EAC 创建两个邮箱用户,以便可以从两个帐户发送电子邮件。
Exchange 客户端可能位于 Outlook 2016 或 Outlook 2013 上。对于测试,我们通过普通 Chrome/Firefox 浏览器进行 OWA 访问。
在 Exchange 2016 上启用 SSL 分流,并对每个 Exchange 服务进行更改,如 Microsoft TechNet 文章“在 Exchange 2013 中配置 SSL 分流”中所述。
要设置辅助 Exchange Server,请执行上述步骤。我们不需要继续安装 AD,但必须确保辅助 Exchange Server 是同一域的一部分,并且未创建新的林域。我们只需使用创建的现有域。
负载均衡策略
NSX Advanced Load Balancer 支持以三种不同方法部署 Exchange 解决方案:
一个虚拟服务 (VS) 和一个池:这是部署 Exchange 服务的最快方法,并且只需要使用一个虚拟 IP 地址。不过,无法为不同服务提供单独的运行状况监控。如果部署 Exchange 2016,您必须在所有服务中选择一种持久性方法;这可能会导致不太理想的运行结果,因为不同的 Exchange 2016 服务需要使用不同的持久性方法以获得最佳的结果。来自 NSX Advanced Load Balancer 系统的统计信息和分析信息是所有服务的汇总结果。
一个虚拟服务和多个池:这需要在 NSX Advanced Load Balancer 上配置第 7 层策略,以将基于主机标头的 HTTP 消息转发到相应的池。这种部署只需要使用一个虚拟 IP 地址,并为不同的服务启用单独的运行状况监控。此外,对于 Exchange 2016,NSX Advanced Load Balancer 支持每个池使用不同的持久性方法。这种部署使 NSX Advanced Load Balancer 能够为每个池提供统计信息和分析信息。
多个虚拟服务,每个虚拟服务一个池:这需要使用与 Exchange 服务一样多的 IP 地址以实现负载均衡。每个虚拟服务将有一个池。这种部署使 NSX Advanced Load Balancer 能够为每个 VS 提供统计信息和分析信息。
虚拟服务定义为虚拟 IP 地址和端口号。
在本节中,我们将使用第二种部署模型。我们为具有多个池的所有服务创建一个虚拟服务。每个池对应一个 Exchange 服务。下表列出了用于负载均衡的所有 Exchange 服务和端口以及运行状况检查方法。Exchange 2016 为负载均衡器的运行状况监控提供预定义的 HTML 页面。
CAS 服务 |
VS 上的端口 |
池上的端口 |
VIP 的 FQDN |
路径 |
---|---|---|---|---|
Outlook Anywhere |
443/HTTPS |
80/HTTP |
lab-dc01.avitest.com |
/rpc/healthchecks.htm |
Outlook Web Access |
443/HTTPS |
80/HTTP |
lab-dc01.avitest.com |
/OWA/healthchecks.htm |
Exchange Web 服务 |
443/HTTPS |
80/HTTP |
lab-dc01.avitest.com |
/EWS/healthchecks.htm |
Exchange 管理中心 |
443/HTTPS |
80/HTTP |
lab-dc01.avitest.com |
/ECP/healthchecks.htm |
Exchange 管理 Shell |
443/HTTPS |
80/HTTP |
lab-dc01.avitest.com |
/PowerShell/healthchecks.htm |
AutoDiscover |
443/HTTPS |
80/HTTP |
lab-dc01.avitest.com |
/Autodiscover/healthchecks.htm |
ActiveSync |
443/HTTPS |
80/HTTP |
lab-dc01.avitest.com |
/Microsoft-Server-ActiveSync/healthchecks.htm |
脱机通讯簿 |
443/HTTPS |
80/HTTP |
lab-dc01.avitest.com |
/OAB/healthchecks.htm |
消息传送应用程序编程接口 |
443/HTTPS |
80/HTTP |
lab-dc01.avitest.com |
/MAPI/healthchecks.htm |
POP3 |
995/POP3,具有 SSL |
995/POP3,具有 SSL |
lab-dc01.avitest.com |
TCP 端口 995 |
IMAP4 |
993/IMAP4,具有 SSL |
993/IMAP4,具有 SSL |
lab-dc01.avitest.com |
TCP 端口 993 |
SMTP |
465/SMTP,具有 SSL |
465/SMTP,具有 SSL |
lab-dc01.avitest.com |
TCP 端口 465 |
在表 1 中,_lab-dc01.avitest.com_ 和 _autodiscovery.avitest.com_ 必须指向虚拟 IP。NSX Advanced Load Balancer 将终止所有基于 HTTPS 的服务。将解密流量并发送到池,然后加密并发回到客户端。对于 SMTP/IMAP4/POP3 流量,将应用第 4 层策略。对于第 4 层策略,NSX Advanced Load Balancer 仅终止 TCP 连接,而绕过 SSL 连接。