随着时间的推移,微软邮件系统逐渐趋于完善,深受诸多企业的喜爱,也有越来越多的企业投入到Exchange Server系列邮件系统中,对于Exchange邮件系统的认知也愈加深刻。目前大部分企业使用的是Exchange 2010与Exchange 2013,在这两个版本中,引入了一个新的功能-邮箱自动隔离,本文将结合作者自身在工作中的体会,详细介绍邮箱自动隔离的机制、产生的现象及有效的处理办法。希望能够对大家以后工作中的故障处理有所参考和帮助。
【正文】
一 邮箱隔离机制
总所周知,MAPI客户端通过多个线程连接到Exchange服务器,进而连接上自己的邮箱。连接成功后,我们能够实现邮件的收发、公用文件夹的访问、联系人搜索等等。当某一些线程出现故障之后,MAPI客户端会反复的尝试去连接,会占用更多的CPU资源等,影响服务器的性能。当这种邮箱连接“线程”故障达到一定的阀值之后,用户邮箱就会被Exchange Server后台自动隔离起来。
那么什么情况下,会导致邮箱连接“线程”出现故障呢?一般说来有如下集中情况可能导致上述故障:
由于数据库受损,导致内部邮箱损坏;
客户端第三方软件破坏线程;
网络故障;
Store.exe程序受到影响
同时,我们还应关注邮箱被隔离的阀值,当达到以下参考值之后,用户邮箱会被隔离起来,无法正常使用:
连接邮箱的线程超过5个受损,且持续时间超过60s;
连接邮箱的线程超过3个受损,且持续时间超过2小时;
我们可以通过修改线程数来避免邮箱被频繁的隔离起来,影响用户的使用。也可以修改用户邮箱被隔离的时间,保证用户邮箱及时恢复正常。打开注册表编辑器,找到如下位置:
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/services/MSExchangeIS/ParametersSystem
在该注册表项下,我们可以添加键值MailboxQuarantineCrashThreshold,调整用户邮箱被隔离的线程阀值;添加MailboxQuarantineDurationInseconds,调整用户邮箱被隔离的时间,默认是6个小时。
二 邮箱隔离现象
用户终端表现为用户MAPI客户端登陆状态正常,但是能收不能发、能发不能收或者既不能收也不能发,表现出了非常明显的邮箱连接线程受损的状况;
在管理控制台,用户-邮箱管理这里,双击打开用户邮箱,点击”邮箱功能“选项卡时,会弹出如下报错:
点击用户邮箱属性上的其它选项卡不会有任何报错;
在MBS邮箱服务器上,检查邮件系统邮箱隔离的注册表键值HKLM/SYSTEM/CCS/Services/MSexchangeIS/ParameterSystem/Servername/Private-dbguid/Quarantined Mailboxes,可以找到该隔离用户邮箱的GUID,如下图:
三 邮箱隔离处理
在后端服务器上的隔离注册表中删除此用户的邮箱GUID。需要特别注意的是,每一台后端服务器上隔离的邮箱是不一样的,需要每一台都去排查;
将用户邮箱迁移至其他正常运行的邮箱数据库,在迁移过程中,会对受损的邮箱进行修复,经过多次实践,进行迁移后,不再发生用户邮箱被隔离的情况。
通常情况下,同一个数据库内的其他邮箱也会逐渐发生被隔离的情况,建议对数据库的用户进行迁移完成后,重建数据库。