Microsoft Exchange Server 分析工具回顾

 

上一次修改主题: 2006-02-13

本文将回顾迄今为止 Microsoft Exchange Server 系列分析工具的历史,此技术的发展历程以及它们的使用方法。还会向您介绍这些工具的幕后工作组,以及将来的发展趋势。

在 Microsoft,我们努力通过识别 CritSit 或“关键时刻”(critical situations) 来优化客户服务和支持。CritSit 是指客户需要紧急援助来解决将中断他们为最终用户提供的服务并影响重要业务运营的问题。当 CritSit 出现时,包括 Microsoft 客户服务和支持部门、Microsoft 服务部门、咨询部门、客户管理部门和产品开发部门在内的全体 Microsoft 职员都行动起来,齐心协力地使客户的系统尽可能快地恢复到正常状态。

在 2003 日历年度底,我们的 Exchange Server 工作组开始注意到 Exchange Server 的三个重要 CritSit 趋势:

  • CritSit 变得越来越频繁。
  • 所有 Exchange Server CritSit 中,有超过百分之六十是由配置问题造成的,而非产品本身的错误。
  • 在某些新的 CritSit 案例中,其他客户在几个月前刚刚经历了同样的 CritSit 问题。

看到配置中一个简单的改变就能对电子邮件环境的关键性质造成如此显著的影响实在令人沮丧,而客户中出现相似的 CritSit 也是我们所不愿看到的。我们需要一种能够以编程方式分析 Exchange 服务器并将任何已知会造成性能、可伸缩性以及可用性故障的问题标记出来的工具。

2004 年 1 月,我向 Exchange 工作组主要开发人员之一 Jon Avner 发送了一封电子邮件,其中提到了有关这种工具的想法。非常凑巧,Jon 也正在考虑类似的方案,就这样,大约用了几天的时间,我们通过电子邮件勾勒出了该工具的具体要求和功能。接着,Jon 经过了一个周末的辛苦努力开发出了第一个版本的 Microsoft Exchange Server 最佳实践分析工具,我们将其亲切地称作“ExBPA 工具”。

当时,我们并没有真正了解我们所创建的这项技术的重要性。Jon 具有多年的开发经验,在创建几乎可适用于任何环境、Exchange 或其他系统的通用框架方面有深刻的见解。我在设计和解决大型 Exchange 拓扑问题方面有几年的经验,现有的背景知识和经验使我能够很快地制定出该工具可以进行的检查列表。

Jon 的工具在收集来自以下多种不同命名空间的数据方面非常有效:Active Directory 目录服务、注册表、Microsoft Windows Management Instrumentation (WMI) 以及其他命名空间。当客户遇到问题时,客户服务和支持工程师会要求管理员运行此工具,然后支持工程师会检查此工具所收集到的丰富信息来尝试诊断客户问题的根本原因。

该工具可以收集大量极具价值的信息,但我们需要一种可自动解析并分析这些信息的方法。于是我们邀请精通 XML 路径语言 (XPath) 的自动化专家 Jack Bennetto 加入了我们的队伍,XML 路径语言 (XPath) 是一种用于在 XML 文档的层次结构中进行导航的综合性语言。几个星期后,Jack 开发出了一个分析引擎,我们将它接到了 Jon 的收集引擎中。借助 Jack 的新引擎,我们可以编写一系列“规则”,这些规则将基于给定的阈值生成一则消息。如果收集到的值超出了容差范围,就会“激发”某条规则。

事情的发展变得明朗起来,我们决定在 Microsoft 对内部 Exchange 拓扑运行我们的新工具。开始并不顺利。我们在运行这个工具上花费的时间超过了 24 小时。这个时间太长了,因为这个工具的设计目的是为了将客户从电子邮件故障的恶梦中解救出来。我们需要一名性能专家,他知道怎样才能使此工具具有更好的伸缩性能。于是 Kevin Chase 来了,他是 Microsoft 最优秀的调试工程师之一。Kevin 进行了更改之后,全局 Exchange 拓扑的收集时间缩短到两小时,单台服务器的扫描时间甚至少于五分钟。

当时该工具的确已经可以非常顺利地运行,但它的分析能力有限。我们需要对所收集的数据应用更丰富的规则集。幸运的是,用于数据收集和分析的规则可存储在 XML 文件中,我们不必重编译代码即可很方便地对其进行更新。

在几个客户站点处试运行了此工具后,我们发现电子邮件问题与 Exchange Server 软件自身有关。在多次情况下,电子邮件问题都是由基本基础结构(如操作系统或名称解析方案)的不正常运行而导致的。我们扩展了规则的范围,将此类依赖关系包含在内。我们必须对整个系统进行整体性检查,不仅包括 Exchange 和在 Exchange 下运行的组件,还包括在 Exchange 上运行的应用程序。也就是独立软件供应商 (ISV),如防病毒软件供应商,为其软件提供规则集的位置。

所有的艰辛工作与合作终于在 2004 年 9 月上旬得到了体现,我们以免费下载的形式发布了 Exchange Server 最佳实践分析工具 1.0 版。

Exchange Server 最佳实践分析工具的关键成功因素是我们能够对客户需求和产品更新迅速作出响应。每个星期我们都会发现几种能更有效地运行 Exchange 系统的方式。被编码到 Exchange Server 最佳实践分析工具中的最佳实践规则来源于各种渠道:我们自己的开发工作组、Microsoft IT 部门、客户服务和支持部门、Microsoft 服务部门以及客户。Exchange Server 最佳实践分析工具的目的是将所有这些知识编码成一个应用程序。现在,该工具可对所扫描的每台 Exchange 服务器顺利地执行 1,500 多种配置检查。它可以告诉您服务器是否存在工作负荷问题,无论您的软件是 Microsoft 软件还是来自其他制造商的软件,它都可以判断该软件是否过期,还可以通知您是否存在可以实施的任何最佳实践方法。

我们每个月都对规则数据库进行更新,因此客户知道他们收到的是最新的有关如何以最佳方式部署并运行 Exchange Server 的权威性信息。到目前为止,Exchange Server 最佳实践分析工具副本的下载次数已超过了 700,000 次。

Exchange Server 最佳实践分析工具将易于使用作为其设计原则之一。管理员不必深入了解该工具即可使用它。Exchange Server 最佳实践分析工具可自动检测 Exchange 服务器,了解这些服务器的使用方式,然后计算出安装了哪个版本的 Exchange Server 和 Windows。

随后对 CritSit 案例的回顾显示 Exchange Server 最佳实践分析工具已产生了重要影响:配置相关问题的出现次数迅速减少。现在性能和灾难恢复是主要的客户问题,Exchange Server 最佳实践分析工具不能用来解决这类问题。一种可以在最短时间内准确定位问题根本原因的有效故障排除工具需要有一个基于向导的用户界面。我们无法将最佳实践分析工具引擎用于此目的,因为它只具有启动、收集、分析以及停止功能,只有很少或没有用户交互功能。简而言之,我们需要一种要求用户输入的新机制来支持另一种故障排除工作流程。为了帮助创建这种新机制,又有两个新成员加入了我们的队伍:Exchange 故障排除专家 Nicole Allen 和 Sustained Engineering 工作组的开发组长 Weiguo Zhang 为 Exchange 产品开发了常用补丁程序和 Service Pack。他们着手构建有限状态机器的实现,即一种支持交互式故障排除工具所需工作流程和分流逻辑的引擎。最后“向导引擎”诞生了,它可以与最佳实践分析工具引擎一同运行,也可以集成在一起运行。

由于 Nicole、Weiguo 和其他人员的辛勤工作,2005 年 11 月,我们推出了 Exchange Server 分析工具系列的两个新成员:

  • Microsoft Exchange Server 性能故障排除分析工具
  • Microsoft Exchange Server 灾难恢复分析工具

今天,基于对三种分析工具的反馈,我们更加充分地理解了 Exchange 环境中出现的常见问题。我们的最终目标是针对此类问题加强 Exchange Server,使其可以防止自身出现服务中断。我们已开始将此知识集成到下一版本的 Exchange Server 产品中,其代码名为 Exchange Server 2007。下面是几个可以代表我们所做工作的示例:

  • 自动设置有意义的默认值 目前某些客户必须在安装 Exchange Server 后立即着手调整他们的服务器。我们已知道他们所调整的许多参数。难道此产品在安装时自动进行这些更改不更好吗?
  • 实现覆盖范围 虽然某些 Exchange 组件可能仍需要进行手动覆盖(常出现在注册表中),但用户无法输入无意义的值。此产品可以自保护,即使已被覆盖时也如此。
    note注意:
    这种情况非常常见,超过了您的想象。例如,许多 Microsoft 知识库文章介绍如何编辑注册表,并提供通常以十进制表示的建议。但在注册表编辑器 (RegEdit.exe) 中,默认的输入类型是十六进制。这很容易导致输入会被错误解析的值。例如,输入值 31,000 可能会被错误解析成实际值 200,704。

Exchange Server 2007 将比以前版本的 Exchange Server 更强大,其中一部分原因我已在前面介绍过,但客户对 Exchange Server 分析工具的需求将一直存在。因此,我们将会为 Exchange Server 2007 添加这些工具。最初的工作组成员仍未改变,Jon、Jack、Kevin、Nicole、Weiguo 和我本人将主要致力于研究并实现新方式,努力使 Exchange Server 成为市场上最优秀的邮件产品。

 
显示: