fice Web Apps的一些問題,說起來非常的有意思,因為之前在做OWA部署這一塊完全沒有發現存在這樣的問題,是以在排查這個問題的時候花了非常多的時間,最後才确定是這樣的問題。環境是這樣,一台Lync Server 2013标準版前端伺服器,在此伺服器上面Hyper-V跑了一台OWA伺服器;還有一台DC伺服器,在Hyper-V上面跑了一台Lync Server 2013邊緣伺服器。 每台伺服器至少有兩張網卡,一張連實體區域網路,一張用來做内網。
其中DC、标準版FE、邊緣都是通過一根專線連接配接到外部網絡,在這根的防火牆上釋出了5061、444、442到邊緣、443到标準FE。OWA是通過另一根專線連接配接到外部網絡,在這根線的防火牆上釋出了443到OWA。
OWA的證書用的是邊緣的,帶有私鑰,并且在SAN裡面也包含了OWA的FQDN和DNS名稱。此問題同時出現在内部環境和外部環境。在進行PPT共享時提示伺服器連接配接問題,一些示範功能不可用。如下圖:
<a href="http://reinember.blog.51cto.com/attachment/201212/18/2919431_1355809478I2TJ.png"></a>
我的PPT是可以正常上傳,然後顯示加載中的,在加載片刻後會出現由于伺服器連接配接問題,一些示範功能不可用。然後在伺服器上取消關聯OWA,重建OWA,重新關聯,可以看到在釋出拓撲後,伺服器有id 41034的日志記錄:
Web 會議伺服器已成功發現 Office Web Apps 伺服器(WAC),PowerPoint 内容已禁用
<a href="http://reinember.blog.51cto.com/attachment/201212/18/2919431_1355809480nNtV.png"></a>
41032的日志内容是:
Web 會議伺服器 Office Web Apps 伺服器(WAC)發現已成功
這裡的四個位址非常有意思,打開均提示應用程式錯誤。跟後面在IIS中打開是一樣的,直接顯示應用程式錯誤。
然後我用日志分析工具,分析了客戶的連接配接,得出以下的結果:
- <error toUri="sip:[email protected];gruu;opaque=app:conf:focus:id:CW55GGN9"
callId="48c14d1520d94da2a90df1b1f86ee898"
fromTag="4f8ca09520"
toTag="7D760080"
requestType=""
contentType=""
responseCode="0">
這裡我們直接打開官方指南中提示的“https://<office web apps fqdn>/hosting/discover”會發現是正常的,會正常的顯示XML内容。由于我沒有截圖,用一下之前的圖檔。
<a href="http://reinember.blog.51cto.com/attachment/201212/18/2919431_1355809482ilbW.png"></a>
除了上面的錯誤外,還有這個錯誤:
<reportError xmlns="http://schemas.microsoft.com/2006/09/sip/error-reporting">
- <error toUri="sip:[email protected];gruu;opaque=app:conf:focus:id:8JVC3K0R"
callId="a8a72df13d9a473884edb254627efce6"
fromTag="5f2de243dc"
toTag="6C3D0080"
requestType=""
contentType=""
responseCode="0">
<diagHeader>54018;reason="The navigation to the WAC URL failed.";ClientType=Lync;Build=15.0.4420.1017;ContentMCU="sip:[email protected];gruu;opaque=app:conf:data-conf:id:8JVC3K0R";ConferenceUri="sip:[email protected];gruu;opaque=app:conf:focus:id:8JVC3K0R";LocalFqdn="REIN-PC";Url="https://office.domain.cn/m/Presenter.aspx?a=0&e=true&WopiSrc=https%3A%2F%2Flync01.domain.cn%2FDataCollabWeb%2Fwopi%2Ffiles%2F1-1-25CEB2B&access_token=AAMFEK8DTuvzp61SmKQqomYLMjMGEN6qWlh_TnVdityizWOhTGWBEK8DTuvzp61SmKQqomYLMjOCAo6AgyBbqMuQE5I1UYrT30DtIKul9Kb1ErcGFcjZvlrAWMXQcoYIqzuh2XWizwgIDURhdGFDb2xsYWJXZWI&<fs=FULLSCREEN&><rec=RECORDING&><thm=THEME_ID&><ui=UI_LLCC&><rs=DC_LLCC&>";ErrorCode="0x800C0005"</diagHeader>
<progressReports>
我們嘗試打開其中的URL位址,如下:
<a href="https://office.domain.cn/m/Presenter.aspx?a=0&e=true&WopiSrc=https%3A%2F%2Flync01.domain.cn%2FDataCollabWeb%2Fwopi%2Ffiles%2F1-1-25CEB2B&access_token=AAMFEK8DTuvzp61SmKQqomYLMjMGEN6qWlh_TnVdityizWOhTGWBEK8DTuvzp61SmKQqomYLMjOCAo6AgyBbqMuQE5I1UYrT30DtIKul9Kb1ErcGFcjZvlrAWMXQcoYIqzuh2XWizwgIDURhdGFDb2xsYWJXZWI&">https://office.domain.cn/m/Presenter.aspx?a=0&e=true&WopiSrc=https%3A%2F%2Flync01.domain.cn%2FDataCollabWeb%2Fwopi%2Ffiles%2F1-1-25CEB2B&access_token=AAMFEK8DTuvzp61SmKQqomYLMjMGEN6qWlh_TnVdityizWOhTGWBEK8DTuvzp61SmKQqomYLMjOCAo6AgyBbqMuQE5I1UYrT30DtIKul9Kb1ErcGFcjZvlrAWMXQcoYIqzuh2XWizwgIDURhdGFDb2xsYWJXZWI&</a>
到此我們可以發現所有的問題都直指OWA伺服器,因為Lync那邊我們是不需要做任何特殊配置的,隻需要簡單的做定義和綁定。如果還是不能确定問題,那我們直接在IIS中打開m虛拟應用,如果看到的是以下錯誤,那麼就可以确定是這個問題了。
<a href="http://reinember.blog.51cto.com/attachment/201212/18/2919431_1355809484CPuF.png"></a>
這裡的證書錯誤是可以忽略的,但内容的錯誤是絕對不能忽略。
<a href="http://reinember.blog.51cto.com/attachment/201212/18/2919431_1355809486IGmt.png"></a>
做過網站的朋友都知道這裡顯示的這個錯誤根本沒有辦法繼續做分析,因為根本就沒有提供什麼有價值的錯誤資訊。但即便如此,我們可以确定一點,這并不是一個情況,換言之,我們的OWA伺服器确實有問題,無論是什麼問題。而我們的伺服器是剛剛配置好的,按理說不該出現這種問題。
其實到這裡我已經沒有辦法繼續分析下去,因為我不會做網站,也不懂.NET,但是非常巧的是我自己建立的環境恰好也是Lync Server 2013,并且夜有OWA伺服器,是沒有問題。到此我決定做一個對比,很遺憾的是發現IIS也好,還是Lync也好,所有的配置幾乎是一模一樣的,到這裡似乎這個問題非常的微妙,因為兩個一模一樣的環境,一個沒有問題,一個有問題,這肯定是不科學的,肯定有一些差異。
最終發現我的環境有一個很大的差異,雖然也是用的Windows Server 2012搭建,但是我的全部都是基于模闆建立的差異磁盤虛拟機。而我在做模闆的時候百分百會做一個操作,那就是加上.NET Framework,為了肯定我的想法,我看了我的環境,的确如此,我在Server 2012中安裝了.NET Framework 3.0和2.0。在發現這些差異後,我很快的否定,因為TechNet官網明确表示OWA伺服器不需要.NET 3.0和2.0,隻需要Server 2012的4.5即可。
<a href="http://reinember.blog.51cto.com/attachment/201212/18/2919431_1355809487ENkR.png"></a>
但很明顯,如果因為官方文檔就去或者不去做測試,那就太沒有自己的主見了。是以我決定在有問題的OWA伺服器上安裝.NET 3.0和2.0。結果可想而知,OWA伺服器的确需要.NET 3.0和2.0,而這在官方文檔中是沒有列出的,由于我不做開發,我不知道為什麼會出現這種差異,但似乎不是我的環境有問題,而是确實沒有.NET 3.0和2.0就沒辦法把我的PowerPoint 示範出來。在了解到解決方法後,我們會進行功能添加,但發現直接添加是有問題的,我們需要做一個Sources的指定,很簡單。我們在虛拟機或實體機上插入Server 2012安裝CD光牒,然後我們進行添加功能。
<a href="http://reinember.blog.51cto.com/attachment/201212/18/2919431_1355809489l0OA.png"></a>
在選擇功能之後,在安裝界面我們不忙點安裝,單擊左下角的“指定備用源路徑”。
<a href="http://reinember.blog.51cto.com/attachment/201212/18/2919431_1355809494dQyK.png"></a>
我們在這裡選擇指定備用源,并指定X:\Sources\sxs\。其中X是CD光牒盤符或鏡像挂載的盤符。
<a href="http://reinember.blog.51cto.com/attachment/201212/18/2919431_1355809498T0bX.png"></a>
單擊确定,然後安裝.NET 3.0和2.0吧,安裝完成可以重新開機一下OWA伺服器。在完成之後可能我們的Lync還是沒辦法共享PPT,我們這時需要在Lync拓撲中解除前端和OWA的關聯,然後再将OWA删除,釋出拓撲。完成之後稍待片刻,再次編輯拓撲,添加OWA伺服器并關聯前端,完成後釋出拓撲。完成後我們立刻觀察事件日志,如果出現事件ID 41032就OK了。
<a href="http://reinember.blog.51cto.com/attachment/201212/18/2919431_1355809500jOh3.png"></a>
如果仍然有問題,那就重新開機Lync前端伺服器吧,有的時候僅僅是修改拓撲是沒辦法解決問題的,并且Stop-CsWindowsServices和Start-CsWindowsSerivces也是沒有辦法解決問題的,最根本的方法還是重新開機Lync前端伺服器。
<a href="http://reinember.blog.51cto.com/attachment/201212/18/2919431_1355809502AGiT.png"></a>
希望今天的文章能夠幫助大家解決相同的問題,在這篇文章裡我較為詳細的說了下排錯過程而并非直接給大家答案,這是因為這種錯誤可能太多,不可能每個錯誤都知道解決方法,是以我希望分享在排錯過程中的思路和方法。
我沒有在Server 2008 R2中測試此問題是否重制,因為我确實比較喜歡Windows Server 2012。雖然Windows Server 2008 R2确實很不錯,但2012感覺更佳,這僅僅是我個人而言。好了今天就到這裡,感謝大家的支援,有任何問題歡迎回複文章,我會盡快的回複大家。
本文轉自 reinxu 51CTO部落格,原文連結:http://blog.51cto.com/reinember/1092935,如需轉載請自行聯系原作者