前段时间一直在做TMG在企业中的高可用性的规划与实施,在windows产品中高可用性一般最常用到的也就是“群集(Cluster)”与“网络负载均衡(NLB)”,那么在TMG中我们要想实现高可用性如何进行操作呢?
    在微软TMG产品中实现高可用性用,我们一般依托”TMG阵列”+“网络负载均衡(NLB)”来实现,目前在企业安全边界规划中,我们一般使用一个或多个 Forefront TMG 阵列来进行对Forefront TMG 部署,根据企业的需要进行NLB配置。
    目前Forefront TMG 阵列主要提供如下功能:
    1、高可用性:用以确保 Forefront TMG 部署的持续运行,包括部署中的一台或多台 Forefront TMG 服务器停机期间。阵列中所有服务器上的 Forefront TMG 配置设置都相同,从而可以在一个或多个阵列成员发生故障转移时提供不间断服务。
   2、可伸缩性主要用于满足企业发展中不断增长的性能需求。根据企业发展规划的不断增长,利用TMG可以轻松地从单一Forefront TMG 部署轻松升级到Forefront TMG 阵列,以及增加现有阵列中的成员数目或增加阵列数目。
   3、分布式永久缓存一般会使用最新阵列管理器配置更新所有服务器,从而使用户能够按需指定新阵列管理器。该信息为永久信息,会在部署中的一台或多台 Forefront TMG 服务器停机期间得以保留。
      下表中列举了关于微软TMG产品标准版与企业版之间功能的一些对比性说明,希望能给大家在企业部署与采购时有一些帮助,选择适合企业需求的版本。
 
Standard Edition
Enterprise Edition
支持的部署方案
独立服务器
独立阵列中的服务器
EMS 管理的阵列中的服务器
CPU
多达 4 核 CPU
无限制
存储
本地
支持对防火墙策略和配置设置进行远程管理。
阵列/NLB/CARP 支持
x
一个阵列中只能具有一台服务器。
企业管理
x
支持,添加了管理 Standard Edition 的功能。
发布
××× 支持
转发代理/缓存压缩
网络 IPS (NIS)
电子邮件保护
需要 Exchange 许可证
需要 Exchange 许可证
Web 保护
需要订阅
需要订阅
通过上表示所示的内容,我们可以非常容易地看出Forefront TMG 企业中支持多服务器阵列。Forefront TMG 标准仅支持单一服务器阵列,所以在构建基于TMG的阵列时版本选择需要非常注意。
那么接下来我们再来看一下Forefront TMG阵列究竟是什么东东?其作用又是什么?
      首先我们要提到的是Forefront TMG 阵列是 Forefront TMG 服务器集合,这些服务器通过一个管理接口进行集中管理。创建 Forefront TMG 阵列时,下列配置设置存储在中心位置:
      1、阵列配置设置,该设置与阵列中的所有成员相关,且由所有成员共享。
     2、每个阵列成员的服务器配置设置,该设置仅与特定阵列成员相关。
     TMG 企业阵列共可以支持的阵列类型共分为两种类型分别为“独立阵列”和“EMS管理的阵列”,下面我们就来对两种阵列做一个简单的说明:
     1、独立阵列中根据选择的负载平衡方法,一个独立阵列最多可以包含 50 台 Forefront TMG 服务器,这些服务器由一个充当阵列管理器的阵列成员管理,如果 Forefront TMG 部署在单一逻辑位置且处理中等流量负载时,可使用此阵列类型。
     2、EMS 管理的阵列: EMS 管理的阵列最多可以包含 200 个 Forefront TMG 阵列,每个阵列最多包含 50 台 Forefront TMG 服务器,这些服务器由企业管理器服务器 (EMS) 管理。建立 EMS 管理的阵列后,可以复制其设置,并使用相同设置最多管理 15 个 EMS 管理的阵列,从而允许对最多 150,000 台 Forefront TMG 服务器进行集中管理。
        独立阵列的话可能现在来说企业用的不是太多,至少在我所做过的项目中很少,用到最多的可能还是利用 EMS 管理的阵列,那么"EMS管理的阵列列"一般用在哪些场景下呢?我们一起来简单了解一下:
        1、Forefront TMG 部署在单一逻辑位置且处理高流量负载。
        2、Forefront TMG 部署在多个位置。在此方案中,EMS 用于集中管理多个位置,像流量负载较低的位置;例如,分支办公室部署。
      为了实现更高地高可用性,我们一般会在部署完成EMS管理的阵列后进行NLB也就是网络负载均衡的配置来满足如集中化的办公网络,保证办公人员在其中一台TMG宕机后依然可以获取连续性地网络服务。
      由于负载平衡旨在平衡阵列成员之间的网络通讯,以便在所有可用服务器中优化通讯。所以在企业部署解决方案中,我们可以可以使用网络负载平衡 (NLB) 或第三方硬件负载平衡器对 Forefront TMG 阵列成员之间的流量实现负载平衡。
      NLB  这是一个可选的 Windows Server 2008 功能,当然在以往的windows server  产品中已经将此功能做为了其中一部分组件或角色功能存在,在TMG中如果您在企业中部署的是企业版的TMG那么在安装TMG前的准备工作或先决性条件配置过程中,TMG会自动帮您完成NLB功能的添加安装,如果在您的企业中部署的TMG是标准版,那么此功能将不会被添加安装,因为标准版的TMG从官方文档角度来说由于不具备NLB功能,所以在准备工具帮助您完成配置时将不会自动添加安装,但是在我的企业TMG部署经验中,可以实现基于标准版TMG的NLB功能,在后续的博文中,我也将会将相关配置的方法进行一个介绍,以便于更多的博友在企业中得以应用。
     在 Forefront TMG 支持的阵列中,NLB 支持最多在八个阵列成员之间实现负载平衡。实现负载平衡的这一方法将会对企业高可用性带来如下的一些优势:
     1、由于可以在 Forefront TMG 管理控制台中直接管理 NLB,因此简化了管理和监视。您可以对所有阵列成员轻松应用 NLB 配置。
    2、 由于可以通过 Forefront TMG 管理控制台管理和用尽节点,因此简化了节点管理。
    3、自动配置防火墙规则和设置。
   而在标准版TMG下实现的NLB在我所做过的项目中可以实现,但是防火墙策略由于标准版对阵列功能的支持问题,则需要单独配置添加,无法向TMG企业版那样根据EMS管理方式自动完成策略的同步,但对于企业所需的高可用×××还是可以完全满足的,可以说是经济实用,呵呵。
   在后续的博文中我也将会对企业版TMG下的“EMS阵列”+“NLB”的配置方式以及标准版下如何实现NLB进行相关博文的介结,还希望大家进行关注。