Exchange Server 2007即将发布。目前用户已经可以免费下载测试版来体验它所带来的新功能,按计划微软将在2007年早期到中期推出正式版。如果您有计划在那时迁移您的Exchange环境到Exchange Server 2007,随着日期将至,您可能需要花费更多的时间来了解Exchange Server 2007所提供的新的结构和特点,同时还应该审视一下您现有的Exchange环境,从而决定应该如何为下次的迁移做准备。或许您并不急于在新产品发布之后立刻迁移您的环境,您可能希望把时间推移到微软修复了新产品中的问题之后,或者是在Exchange Server 2007 Service Pack 1发布之后。如果是这样的话,您就可以考虑把升级安排在明年年底或者后年年初了。
或许您还在对自己说:“我有足够的时间!”但是考虑到Exchange Server 2007所带来的改变是如此巨大——比如说,仅仅支持64位机器,而不再支持32位以及IA64架构——我认为尽快开始制定您的迁移计划是个好主意。在开始计划之前,您需要关注几个关键的方面,包括如何规划迁移的顺序,知道64位Exchange所带来的影响,了解您Exchange环境的路由结构,准备好使用Windows PowerShell等等。
寻求完美
随着开始审视您的Exchange环境的架构,您会发现没有一个人会说自己的Exchange 2000 Server或Exchange Server 2003的部署是非常完美的——Windows Server 2003的部署也是一样。实际上,我们很难从文字上定义完美,这是因为软件一直在发展,可用的新的工具层出不穷,各个公司在商业上的需求和压力也不尽相同。许多人都认为在微软的观点里,一个完美的Exchange Server 2003的环境是建立在完美的公司内部结构的基础上的。没有多少人有机会去尝试配置像微软在Redmond(微软总部所在地)数据中心里的规模巨大的Exchange邮箱群集;当这个群集出现任何问题的时候,也并没有多少公司有自己的Windows或Exchange部署团队能够使用。对于完美,每个人都有自己的定义,所以我建议您甚至不必要去期望完美。相反,您可以从其他公司的例子中学习尽可能多的知识,再根据您公司的实际情况,定义出最佳配置。
您还应当认识到微软已经公布了一些工具,像Exchange Server Best Practices Analyzer (ExBPA),通过这些工具,您可以更加容易的去分析和调整您的部署。还可以通过ExBPA来比较您的Exchange服务器的配置和微软推荐的最佳配置的不同。毫无疑问,运行ExBPA可以作为审视部署的第一步,因为ExBPA可以检测到非常明显的纰漏并给出建议,从而使您的Exchange部署更加完善。但是,记住ExBPA只是一个自动运行的程序,您所了解的Exchange环境里真实的信息远比它多;所以只需要把ExBPA的建议当成一种参考,而不是绝对正确的解决办法。
要更新ExBPA工具所使用的规则,请留意微软Exchange分析器的官方站点(要了解如何访问,请参阅学习中心章节)。微软将会发布新版本的ExBPA,它可以帮助客户去更好地准备Exchange Server 2007。(译者注:在目前最新公布的ExBPA版本2.7中,有一个名为“Exchange Server 2007 Readiness Check”的检测,它可以帮助您更好地迁移到Exchange Server 2007。更多信息,请参阅http://msexchangeteam.com/archive/2006/07/28/428506.aspx。)考虑到ExBPA是使用规则去检测系统配置的,我推荐您使用ExBPA提供的选项去定期检测和安装最新的规则,这样ExBPA可以查明问题并提供建议,帮助您迁移到Exchange Server 2007做准备。
考虑迁移
在确保您现在的Exchange部署正确之后,就可以开始考虑如何准备Exchange Server 2007的迁移了。我们可以把它分成四个阶段:发现、分析、决定和实施。
发现。在您现有的Exchange环境里,有多少台Exchange服务器,又有多少台支持Exchange的服务器(像反垃圾邮件、反病毒、备份服务器、DHCP、全局编录服务器——GC、WINS服务器)?他们分别被放在什么地理位置,一共有多少邮箱?您是否有特殊的理由(像网络因素),一定要把某台服务器放在某个地理位置?这些应用程序是否都支持Exchange Server 2007,还是以后会?
分析。考虑到Exchange Server 2007在结构上带来的改变以及必须使用64位Windows的特性,您可能需要做哪些改变来改善或者简化您的Exchange架构?比如说,您是否可以整合几台服务器,从而达到更好的效果呢?同时,您还要多了解微软在Exchange Server 2007里新提供的主要的功能,看看它们是否对您来说很重要。像Exchange Server 2007包含了更多更好的过滤功能,您应当考虑这些改善是否会影响到Exchange环境里现有的反垃圾邮件和反病毒程序。
决定。制定计划来加入Exchange Server 2007到现有的组织中。了解您需要如何加入新的邮件服务器,它们将取代哪些老的服务器?哪些老的服务器又将被保留,或者被重新安装新版本的程序?哪些应用程序将被升级(什么版本)?具体在什么时候进行这些操作?举个例子,微软发布了新版的Outlook 2007,它将是Exchange Server 2007的最匹配的客户端。您还需要考虑是否引入Microsoft Office 2007作为客户端,以及它们的升级费用。
实施。我能够给您的最重要的建议是不要只停留在Exchange上面。把目光放长远一点,关注所有和迁移相关的部分,包括服务器、存储硬件、培训、第三方应用程序、技术支持、操作流程和客户端程序(包括掌上设备)。
对于复杂的任务,把它们分成一个个小的模块不失为好的办法。但是,要更好地迁移Exchange环境,您还需要详细了解Exchange Server 2007带来的主要变化。下面就让我们来具体看看。
64位硬件
Exchange Server 2007最大的改变莫过于它只支持64位的硬件平台。微软相信从一台服务器所支持的邮箱的数量上看,64位的平台能够让Exchange具有更好的扩展性;同时它使Exchange能够更好地处理大容量的邮箱和邮件,减少了Exchange向硬盘的大量的读写操作,因为它可以把这些信息存储在扩展的内存当中。这种改变还能够解决以前的复杂Exchange环境中(特别是群集环境)的虚拟内存碎片(virtual-memory fragmentation)问题。
要获得最优化的配置,您需要在64位的硬件上安装Windows Server 2003(最好是Release 2)和Exchange Server 2007。您甚至不能够升级已经安装了Windows Server 2003和Exchange Server 2003的机器到Exchange Server 2007,即使这台机器使用的是64位兼容CPU(像AMD Opteron和the Intel EMD64T)。考虑到原地升级(In-place upgrade)的复杂性,微软并不支持这样的迁移方法。所以您必须部署新的服务器,来安装Exchange Server 2007;再使用移动邮箱的办法来迁移用户。这种方法的缺点是需要使用新的机器,但是如果您把硬件的升级和Exchange Server 2007的迁移安排在同时进行的话,就能够节省开支了。好消息是,微软大大优化了Exchange Server 2007的移动邮箱的功能,从而使得在服务器之间移动邮箱更加容易;我们甚至还可以使用PowerShell的脚本来自动移动邮箱。
考虑到Exchange系统包括很多的组成部分,甚至第三方的产品,像反垃圾邮件、反病毒、备份程序、分析信息追踪日志的工具,以及一些管理工具像HP Open View系列软件,向64位硬件的迁移并不仅仅只包括移动Windows和Exchange。您需要所有这些软件支持Exchange Server 2007。所以我推荐您联系您的供应商,来判断他们已经升级了他们的产品。要了解更多的64位Exchange Server 2007的影响,请参阅学习中心章节。
Windows和路由
直到现在,用Active Directory中站点的概念来描述物理上直接相连的一组电脑的集合一直被认为非常有效和方便。但是从Exchange的角度来说,您需要关注的可能只是支持Exchange的站点所使用的全局服务器的摆放位置。在Exchange Server 2007中,邮件传输将会放弃在Exchange 2000 Server和Exchange Server 2003中使用的路由组(routing group)的概念,相反它将会使用Active Directory中站点的概念来设计SMTP的路由。一个站点被定义为一个或者多个子网(subnet),所以更适合用站点的概念来描述跨IP网络传输SMTP邮件的路由结构。
但是放弃路由组所带来的一个影响是Exchange Server 2007也放弃了链路状态路由更新信息(link-state routing update messages)。Exchange 2000 Server和Exchange Server 2003在路由组织之间传播这种信息,用它来通知所有服务器最新的路由拓扑结构。在Exchange 2000 Server首次引入链路状态路由更新信息的时候,一切都看起来很完美。时至今日,我们可以看到对于Exchange 2000 Server来说,当时的公司网络结构是足够稳定的。但是没有人知道在星型(hub and spoke)拓扑结构的网络中将会发生什么:更新信息可能会充斥整个网络,不稳定的网络将会导致大量的问题。
当您在活动目录(Active Directory)中部署站点的时候,您可能还不会想到微软会使用站点作为邮件路由的基础。在您当初部署完Windows 2000环境之后,您也可能再也没有审视过您的AD设计,所以我认为现在正是时候从书本里跳出来,来进行一次重新的设计。您还需要考虑在您完成了上次的AD部署之后,在您的网络架构中有没有出现大的改变——举个例子,新的或者更快的链接,抑或是从星型(hub and spoke)结构的网络转换到了网状(mesh)结构的网络。很明显,您希望在站点之间的AD复制正在可靠的工作,但是您还应当确保站点之间的邮件传输也是高速有效的。只有那些放置了Exchange桥端服务器(bridgehead)的站点将会参与到邮件传输的过程中,这些站点需要至少有一台全局服务器来帮助Exchange路由邮件、证实邮件地址、解析查询式通讯群组(Query-based Distribution groups)、扩展通讯群组的成员等等。
尽管Exchange Server 2007使用Active Directory中站点的概念作为邮件路由的基础,但是在AD站点和拓扑结构之间并不存在一一对应的关系。所以当您审视目前的Exchange Server 2003路由拓扑结构的时候,需要去记住只有那些放置了Exchange桥端服务器的AD站点将会参与到邮件传输的拓扑结构中。看看目前AD站点的分布,把它们规划到Exchange Server 2003路由结构中去,再来观察一下它们是否可以进行比较或者相兼容。这会帮助您认识到是否要进行一些改变了,像是否在每个AD站点需要安装一台Exchange桥端服务器,之后邮件便可以到达或者通过这个站点。您还需要去确保所有的Exchange邮箱服务器可以通过访问这些Exchange桥端服务器来传输它们的邮件。同样在这次审视中,您应尽可能去尝试简化您的路由结构:这是因为在您部署完Exchange 2000 Server或者Exchange Server 2003之后,可能有低效的网络改变发生并且未被纠正。
除了摒弃路由组而使用Windows站点的概念作为路由的基础,微软还使用了.NET Framework来重新编写Exchange Server 2007的传输引擎,从而使得它处理邮件更加简单和高效。但是这样一种改变带来的直接的影响就是原来专为Exchange 2000 Server或Exchange Server 2003所开发的Event Sink将不再有用。举个例子,为了满足法律法规,一些财务公司需要在原有的Exchange 2000 Server或者Exchange Server 2003中开发一些Event Sink来阻止邮件从公司的一个部门传播到另一个部门。但是考虑到Exchange 2000 Server或者Exchange Server 2003中的Event Sink将不再适用于Exchange Server 2007,开发人员就需要为Exchange Server 2007重新编写这些代码。另外需要注意的是大部分的程序员并不精通于开发Event Sink,这种转变可能需要花费更大的代价。但是一个好消息是Exchange Server 2007是基于.NET Framework的,所以微软承诺Exchange Server 2007将会成为更加简单的开发平台。发展当然是一件好事,但是这样您就不得不重新评估是否您需要为Exchange Server 2007重新开发代码。
习惯PowerShell
PowerShell原来的开发代码为Monad,它是一种具有强大功能的命令行和脚本语言,它为在Windows平台上自动化管理操作提供了一种简单的方式。利用这次升级的机会,微软清除了很多老版本的Exchange服务器用来执行管理操作的应用程序编程接口(API),它们中的大部分都没有被正式发布或者有成文的规定。比如说,在Exchange 2000 Server和Exchange Server 2003服务器上,您必须使用不同的API来自动化管理操作。在Exchange Server 2007环境中,您就可以放弃这些API了,而使用一组被称为CMDlet的PowerShell代码包。CMDlet在英文中的发音为command-lets,它实际上就是一组执行特定操作的代码的集合,像创建新的邮箱。实际上,新的Exchange管理控制台(称为Exchange Server 2007 Management Console)正是建立在PowerShell CMDlet基础上的。
现在,您就可以开始学习PowerShell,而不用等到Exchange Server 2007正式发布,因为它已经适用于Windows Server 2003了。虽然您不能了解如何使用它来管理Exchange Server 2007服务器,但是您可以学习使用这门语言,学习如何创建脚本并使它正常工作。当您在一台服务器上安装Exchange Server 2007时,安装程序将会自动添加用来管理Exchange的PowerShell语句。到那时候,您就可以了解PowerShell是如何和Exchange一起工作的。更多关于PowerShell的信息,请参阅学习中心章节。
其它的准备
除了那些明显已经支持Exchange的软件(像反病毒、反垃圾邮件程序)之外,在我们部署Exchange Server 2007的时候还应当考虑那些新版本的程序。像微软刚刚发布的Office 2007,其中就包括新版的Outlook程序。在部署Exchange Server 2007的时候,我们就需要去考虑并且计算把客户端升级到Outlook 2007需要花费的成本。在Outlook 2007中,我最欣赏的是一个被称为AutoDiscovery的功能,它使用Exchange Server 2007提供的网络服务来帮助Outlook 2007自动联系AD,查明用户的邮箱所在的Exchange服务器,这样就减少了用户在配置Outlook账号时带来的问题。
考虑到微软将在Exchange Server 2007之后的版本中完全放弃Exchange公用文件夹,也许就在3到4年以后,所以目前很多公司都在考虑把Microsoft SharePoint Portal Server服务器作为Exchange公用文件夹的替代品。最新消息显示用户将不能在Exchange Server 2007管理控制台中管理Exchange公用文件夹;您将不得不使用PowerShell或者是Exchange Server 2003服务器来管理它们。所以现在正是时候来考虑如何替换Exchange公用文件夹。新版本的SharePoint已经发布,在您的Exchange迁移规划当中,您是否考虑加入SharePoint服务器,然后再使用新版本的SQL服务器来作为SharePoint后台数据库服务器呢?或许您也可以考虑Live Communication Server作为另一种替代方案。
我的观点是Exchange系统不仅仅只和邮件传输直接相关。要确保系统中的所有必需的部分都迁移成功,您需要进行一个全盘的规划。
培训
即使您已经有10年管理Exchange的经验,您也会发现Exchange Server 2007的改变是如此巨大,以致您需要花费大量的时间来学习它。其中包括了解PowerShell以及它强大的脚本能力、学会如何调整64位平台、如何确保AD站点之间路由正常、如何和老版本的Exchange服务器共存、如何在复杂环境中执行升级等等。我建议您下载Exchange Server 2007测试版并在测试环境中进行安装,这样就能够学习和了解一些Exchange Server 2007中的新功能。想知道如何下载Exchange Server 2007测试版,请参阅学习中心章节。
但是即使您已经使用过了Exchange Server 2007的测试版,进行一些培训也是有必要的。所以现在就注册一些课程,来扩展您的知识,了解如何进行最佳配置,然后再和其他管理员分享您的知识吧!
现在就开始吧
从1996年开始,微软每隔几年就会发布一个新版本的Exchange服务器。所以,进行一次升级不是一次噩梦。每一次升级都有它自己的特点。Exchange Server 2007的特点就是:它使用64位平台,使用AD站点作为路由的核心,具有新的脚本编辑和管理自动化的功能。就像我在附文“浅谈Exchange UM”中提及的一样,新的统一通讯(Unified Messaging,UM)的功能也是一个非常吸引人的卖点。如果万事就绪,Exchange Server 2007的安装就会非常直接。所以让我们现在就开始吧!
附文:
浅谈Exchange UM
Exchange Server 2007中引入了微软引以为荣的统一通讯系统(Unified Messaging,UM)。通过和Exchange服务器、Outlook客户端的高度整合,以及把每客户协议(Per Seat License)的价格设定在远远低于竞争对手的20美元,微软希望能够进入统一通讯市场。
微软向来以压低售价,进入新兴市场,最后取得成功而出名。SharePoint Portal Server服务器就是最好的例子,微软在2001年以低廉的价格推出SharePoint Portal Server,从而大大降低了市场上同类产品的价格。同样的事情还会发生在Exchange Server 2007的统一通讯系统上。Exchange Server 2007 UM提供了以下的功能:
• 基于会话的初始化协议(SIP,Session Initiation Protocol)的架构,它使Exchange UM可以直接连接到支持SIP的个人自动分组交换机(Private Automatic Branch eXchanges,PABXs)或者是通过一个可以把时分多路复用(Time Division Multiplexing,TDM)信号转换成SIP的通道。
• 支持语音访问语音邮箱、收件箱、日历和联系人。微软在推广Exchange Server 2007时,最常用到的一个演示是当一个人在开车去办公室的路上,他使用手机拨打Exchange服务器来重新组织他的日程安排。但是从目前的情况看来,Exchange Server 2007不会支持很多种语言,这限制了Exchange Server 2007在美国以外的市场上的推广,这还可能限制了那些英语还不够流利的人士去使用这项功能。看来,它还需要进一步的测试。
• 接受传真并发送到用户邮箱。
• 未接电话提示功能。如果一个电话被转移到语音邮箱,但是没有留下任何信息,Exchange将会给邮箱所有者发一封电子邮件,通知他这个未接电话的时间和打电话者的ID。如果Exchange可以解析出这个ID,它就会直接提供这个打电话者的姓名。
• 统一通讯管理策略。管理员可以自定义策略,像最长留言时间,最短PIN码长度,PIN码保存时间,是否限制国际长途电话。
Exchange Server 2007统一通讯系统整合了很多好的功能。但还是有一些遗漏,像和非Exchange语音邮箱系统的共存,当语音邮件到达时呼叫其它电话号码或者携带型传呼器等等。但是在巨大的价格优势以及和Exchange其它功能的完美结合面前,这样的缺失显得微不足道。
附: 学习中心
更多关于64位Exchange的信息:
Planning for a 64-bit Future
http://www.windowsitpro.com/Articles/ArticleID/47704/47704.html
Moving to 64-Bit Exchange
http://www.windowsitpro.com/Article/ArticleID/49880/49880.html
Exchange 12: The 64-Bit Question
http://www.windowsitpro.com/Articles/ArticleID/48915/48915.html
更多关于Exchange Server 2007的信息:
Surveying Exchange Server 2007
http://www.windowsitpro.com/Articles/ArticleID/50052/50052.html
Setting Up Exchange Server 2007
http://www.windowsitpro.com/Articles/ArticleID/93599/93599.html
5 Things You Should Know About Exchange Server 2007
http://www.windowsitpro.com/Articles/ArticleID/50447/50447.html
Exchange Server 2007 Brings Out the Best in Outlook 2007
http://www.windowsitpro.com/Articles/ArticleID/93015/93015.html
更多关于PowerShell的信息:
Introducing Windows PowerShell
http://www.windowsitpro.com/Articles/ArticleID/50565/50565.html
Steps for Getting Started with Windows PowerShell
http://www.windowsitpro.com/Articles/ArticleID/53852/53852.html
Getting Started with Windows PowerShell
http://www.windowsitpro.com/Articles/ArticleID/93560/93560.html
微软资源:
Microsoft Exchange Analyzers
http://www.microsoft.com/technet/prodtechnol/exchange/downloads/2003/analyzers/default.mspx
Microsoft Exchange Server 2007 Home
http://www.microsoft.com/exchange/preview/default.mspx
Scripting with Windows PowerShell
http://www.microsoft.com/technet/scriptcenter/hubs/msh.mspx