一則由於AD時間不對導致Exchange Shell無法使用的故障

今天解決了一起由於Active Directory服務器時間不對導致Exchange Server 2016 Shell無法使用的故障,下面介紹一下故障情況及解決過程。在這個故障中,涉及到的服務器一共有3臺計算機:一臺Active Directory的服務器,一臺Exchange Server 2016郵箱服務器、一臺邊緣傳輸服務器。這幾臺都是ESXi中的虛擬機,服務器操作系統都是Windows Server 2016 Datacenter,如圖1所示。

clip_image002[4]

圖1 實驗拓撲

安裝Exchange Server 2016的計算機是一臺從模板新部署的虛擬機,加入到172.20.8的Active Directory,是一臺成員服務器。在172.20.1.16安裝郵箱服務,在172.20.1.12安裝邊緣服務器都非常順利,沒有出錯。安裝完成後,進入Exchange管理中心都正常。接下來是在邊緣服務器導出邊緣訂閱文件然後在郵箱服務器導入邊緣訂閱文件,這一步就出了問題。

在邊緣傳輸服務器(圖1中IP地址爲172.20.1.14的計算機)創建並導出邊緣訂閱文件之後,準備在郵箱服務器導入邊緣訂閱文件,在進入Exchange Shell時,出現“Exchange出現‘WinRM無法處理該請求,因爲輸入XML包含講法錯誤’等提示”,如圖2所示。

clip_image004[4]

圖2 無法連接到遠程服務器

因爲提示中提示“WinRM無法處理該請求”,以前處理過該類故障,是WinRM IIS擴展沒有安裝。打開服務器管理器添加WinRM IIS擴展,如圖3所示。

clip_image006[4]

圖3 安裝WinRM IIS擴展

但在安裝了WinRM IIS擴展之後,啓動Exchange Shell故障依舊。

以前我也多次安裝Exchange Server,還是第一次碰到這種故障。百度搜索相關故障,看到的解決方法很多,例如有的讓檢查防火牆是否啓用等,但我的這些虛擬機的防火牆都是開啓的。還有的介紹是需要卸載重裝,如果重裝還需要卸載Exchange,刪除註冊表等操作,但我認爲這是一個“小故障”,還到不了需要重新安裝的程序。

在嘗試了多種辦法之後,在https://social.microsoft.com/Forums/zh-CN/ea04f18a-f669-46fb-97fd-47ad4828655b/exchange-shell-winrm-xml-?forum=exchangeserverzhchs帖子中看到此問題可能與虛擬機的系統時間有關。經過檢查,發現當前ESXi平臺中,Exchange郵箱服務器、邊緣傳輸服務器、其他虛擬機的時間都正確,只有Active Directory服務器(IP地址爲172.20.1.8)的時間不對。但調整了該虛擬機的時間之後,馬上就又改回錯誤的時間,非常執着,無論是手動調整虛擬機的時間,還是通過NTP設置計算機的時間,該虛擬機的時間在調整爲正確的時間後,稍等一會,該計算機的時間就調整爲錯誤的時間(比當前的正確時間快14分鐘,如圖4所示)。

clip_image008[4]

圖4 虛擬機的時間比正確時間快

經過檢查,發現了故障點,ESXi的主機時間不對,受影響的只有這臺Active Directory的虛擬機。檢查虛擬機的配置,發現該虛擬機設置爲了“同步客戶機時間與主機時間”,如圖5所示。

clip_image010[4]

圖5 時間設置

首先修改ESXi主機時間爲正確時間,然後修改虛擬機配置,取消“同步客戶機時間與主機時間”,再在虛擬機中調整計算機的時間,然後重新啓動郵箱服務器,再次執行Exchange Shell,此時可以正常使用,如圖6所示。

clip_image012[4]

圖6 Exchange Shell

Exchange Shell中執行New-EdgeSubscription -FileData ([byte[]]$(Get-Content -Path "D:\EdgeSubscription.xml" -Encoding Byte -ReadCount 0)) -Site "Default-First-Site-Name"

命令導入邊緣訂閱文件,如圖7所示。之後可以繼續Exchange的配置,這些不做介紹。

clip_image014[5]

圖7 導入邊緣訂閱文件成功

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章