前几天公司海外站点的Exchange Sever 2013出了点问题,Outlook用户能够正常链接到Exchang server进行邮件收发,脱机通信簿、activesync等也都正常,惟独经过WEB访问OWA和ECP的时候,输入用户名和密码,点击登陆验证完用户名密码后,开始跳转至邮箱的过程当中会清楚的看到“正在打开您的邮箱,正在处理。。。”,可是最后就会提示“发生意外错误,没法处理你的要求”,点击“详细信息”会看到相似于“X-OWA-Error: System.NullReferenceException”或者“X-OWA-Error: microsoft.exchange.data.storage.connectionfailedtransientexception”等字样。不管是在客户端仍是Exchange sever自己都是一样的问题。另外有意思的问题是Exchange Server有BJ和HK 两个站点,BJ一切正常,出问题的只是HK站点。前端
看到这里有经验的小伙伴都会首先去检查IIS的OWA虚拟目录或者后端用户所在的Mailbox数据库。在Exchange server中打开“事件查看器”,并无发现和Exchange和IIS相关的明显错误日志,甚至其余的应用程序等日志也没有明显的错误。Outlook能够正常收发邮件,因此基本能够排除mailbox的问题,不过仍是经过eseutil.exe检查了数据库的状态—“clean shutdown”,那也能够排除数据库的问题喽。接下来就是OWA了,去检查OWA的log, Exchange安装目录的“\v15\Logging\OWA\ServerTrace”中数据库
at Microsoft.Exchange.Clients.Common.Canary15..ctor(String logonUniqueKey)后端
at Microsoft.Exchange.Clients.Common.Canary15Cookie.TryCreateFromHttpCookie(HttpCookie cookie, String logonUniqueKey, Canary15Profile profile)服务器
at Microsoft.Exchange.Clients.Common.Canary15Cookie.TryCreateFromHttpContext(HttpContext httpContext, String logOnUniqueKey, Canary15Profile profile)cookie
at Microsoft.Exchange.Clients.Owa2.Server.Core.OwaRequestHandler.InternalOnPostAuthorizeRequest(Object sender)网络
at Microsoft.Exchange.Clients.Owa2.Server.Core.OwaRequestHandler.OnPostAuthorizeRequest(Object sender, EventArgs e)架构
at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()编辑器
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)ide
这个过程显示的大概是exchange的前端cas和后端mailbox之间建立链接请求的过程。这时你们可能想到的是前端CAS和后端Mailbox的网络通讯是否存在问题?测试
因为目前cas和mailbox是两台all in one角色(有dag),cas和mailbox通讯基本是发生在同一台服务器上,且网络没有作过任何调整,网络问题基本也能够排除了。
接下来能想到的无非就是OWA虚拟目录或许出问题了,动手重置OWA虚拟目录后,问题依旧。。。最后终极杀手锏找了一台服务器从新安装一台exchange2013,不作任何更改直接建立用户和数据库,而后在exchange本机尝试访问owa,居然出现一样的问题,无语了。。。
这时候能够肯定问题不是exchange server自己形成的。。。。
既然不是exchange的问题,那惟独和exchange有联系的就是域控dc服务器了,但是从开始出问题就检查过AD站点的复制情况,并无出现明显错误。
这时候想起曾经看到过国外一哥们相似问题,最后他向微软开启了一个case支持,微软用了3天15小时进行排查,最后居然是经过修改ADSI编辑器中cas属性来解决的,整个好也是也OWA没法访问相关的。因为以前不能排除Exchange自己的问题,而且这问题很难让人和域控联系起来,所以一直没敢尝试。如今既然能肯定问题和dc有关系了,那这个解决方案仍是值得去尝试的。。。
具体操做以下:
一、 因为ADSI内容涉及到整个的活动目录内容,操做以前必定要作好备份,首先经过Windows Server Backup将整个dc作了一次完整备份,以备后患。(这里估计又要被鄙视了,偌大的一个公司居然没有完善的备份系统,o(╯□╰)o)
二、 打开ADSI编辑器,链接到【配置】,而后找到【CN=Services】-->【CN=Microsoft Exchange】 -->【CN=<你的exchange组织名称>】-->【CN=Client Access】,而后右键点击选择【属性】,打开属性编辑器窗口,在【属性编辑器】选项卡中找到“msExchCanaryData”字样的属性值,而后清空(可能会有0-n多项)
这里咱们将这几个值的内容再次复制到记事本中进行保存,这样能够起到备份双保险做用,慎重操做,毕竟是生产环境。
三、 打开CAS服务器的IIS管理器,点击【应用程序池】,找到【MSExchangeOWAAppPool】,而后点击右侧窗口的【回收】
四、 重启exchange服务器
待Exchange服务器重启完成后进行测试,海外用户OWA和ECP恢复正常,其余outlook功能也正常。北京总部用户也一切正常。问题终于解决!
最后问题是解决了,但致使的缘由并无真正找到,但愿看到这篇文章并熟知exchange2013的小伙伴来一块儿讨论。。。。
关于Exchange2013,刚刚一年多的时间已经有 CU5的更新了,无奈让人感慨Exchange2013架构的改变让人耳目一新,同时也带来了N多问题,真心但愿Exchange2013的命运不要像Exchange2007那样。。。( ╯□╰ )
解决过程当中咨询了多个技术好友,因为Exchange2013是新产品并无太普及,小伙伴们也都没有遇到过,在此感谢各位!同时感概本身无心中居然成了先吃螃蟹的人。。。( ╯□╰ ),再者公司没有购买微软技术支持服务,最后想经过MVP通道向微软寻求技术支持,怎奈须要1个工做日的响应时间,最终也没有用上MVP的这点儿福利。。。( ╯□╰ )
最最后附上提到的帖子连接,同时感谢下O(∩_∩)O