VMware和微軟提供虛擬化服務已經有很多年了。對于VMware,到現在已經超過十年了,而微軟進入服務器虛擬化稍晚。
一個IT環境是由若干物理IT組件組成的,包括運行活動目錄服務的服務器。活動目錄域名控制器是順利運營IT所必須的關鍵服務器。作為虛擬化路線的一部分,必須確保每個物理IT資源都處于被虛擬化的過程中,這樣才能降低成本。這也包括對物理域名控制器進行虛擬化。
活動目錄域名控制器不僅有助于IT運營順利進行,它還是提供認證和授權服務的一個關鍵組成部分。在如今的生產環境中,幾乎所有的網絡應用都使用活動目錄作為身份驗證提供程序。在對這些關鍵服務進行虛擬化之前,我們要考慮很多事情。
這也就是本文的出發點,它能幫助你了解在VMware或Hyper-V上對活動目錄域名控制器進行虛擬化時,哪些該做,哪些不該做。
禁用時間同步
借助于Windows時間服務,活動目錄域名控制器有一個內建的機制來處理時間同步。虛擬化平臺也為虛擬機提供了時間服務,但是建議禁用虛擬域名控制器上的時間同步服務,并讓活動目錄管理虛擬域名服務器之間的時間同步。
不要生成系統快照
快照功能是為開發和測試目的而設計的。作為快照過程的一部分,快照會恢復為生成時的配置。快照需要在快照文件生成前,虛擬機置為已保存狀態。
1. 首先,將虛擬域名控制器置為已保存狀態可以減少停機時間,如果差分磁盤文件很大,作用是很明顯的。
2. 其次,盡量不要把一個虛擬域名控制器回復到以前的配置。如果你這么做了,這可能導致那臺域名控制器的活動目錄數據庫的副本不一致。
注意:微軟Hyper-V通過在Windows Server 2012中引入了一個新的Live Snapshot Merge功能解決了停機問題。
對域名控制器禁用磁盤緩存
關于“對虛擬域名控制器內的所有磁盤驅動器上的Policies選項卡禁用磁盤寫緩存”,建議對所有使用 Extensible Engine Storage技術的服務應用此項設置,避免數據丟失。
禁用磁盤緩存確保數據真的寫進了磁盤里,而不是在內存中保存,否則一旦斷電或服務器崩潰,數據可能會丟失。
不要暫停
不建議暫停一個虛擬域名控制器,特別是虛擬域名控制器暫停的時間超出了活動目錄的墓碑時間。暫停會導致虛擬域名控制器脫離同步,在活動目錄環境中產生延遲對象。
延遲對象是在活動目錄墓碑時間內,被刪除的對象沒有復制到所有活動目錄域名控制器上時產生的。墓碑時間按所使用的操作系統為80天或160天。
一定要對虛擬域名控制器設置固定或直通磁盤
建議為存儲域名控制器的數據庫(NTDS.DIT)和日志文件設置固定或直通磁盤類型,這樣域名控制器會更有效率。應用其他的磁盤類型(如差分磁盤虛擬硬盤)會降低虛擬域名控制器的性能。
注意:直通磁盤類型是微軟Hyper-V的一個功能,相當于VMware虛擬化平臺上的Raw磁盤。
不要復制域名控制器虛擬機
大多數虛擬化廠商為快速部署提供了復制虛擬機的功能。強烈建議不要對域名控制器進行復制。如果你需要這樣做,我們建議使用SysPrep.exe這個工具,它可以移除安全標示符(SID)副本。
千萬不要使用虛擬化產品的導出功能
在導出過程將相關文件導出之前,導出功能會把域名服務器置為已保存狀態。然后虛擬機才能繼續提供服務。
我們強烈建議除非萬不得已,否則不要暫停域名控制器上的服務。停止這些服務可能會導致使用活動目錄作為驗證提供程序的網絡應用程序停止。
禁用或設置Automatic Start Action
虛擬機可以設置為虛擬主機故障后自動啟動。微軟Hyper-V和VMware都提供此功能。
Automatic Start Action功能避免了人為操作,但對于活動目錄域名控制器來說這不是一個很好的功能。假如虛擬主機停機,所有的虛擬域名控制器都不能設置為自動重啟。
使用此功能會導致啟動域名控制器的延遲。例如,子域名控制器不應該在根域名控制器運行前啟動。因此,建議禁用此功能或為子域內的虛擬機域名控制器的初次啟動設置延遲。
禁用虛擬域名控制器的故障恢復策略
活動目錄是一種多主機同步技術。在活動目錄備份技術的作用下,所有虛名控制器都會與活動目錄數據庫保持一致。默認情況下,活動目錄域名控制器帶有容錯和負載平衡機制,來提供身份驗證和授權服務。
因此,如果虛擬域名控制器運行在一個集群環境下,最好的做法就是禁用所有故障恢復策略,阻止集群間虛擬域名控制器的自動備份。
在一臺主機上至少保證一個DNS和域名控制器運行
把它作為最佳做法,有很多理由:
1. 活動目錄和DNS緊密結合的組件。DNS需要為生產環境中運行的網絡應用程序解析域名。DNS可以在裝有或未裝有活動目錄的服務器上運行。如果DNS服務在一臺域名控制器上運行,那建議至少在該物理環境下保證一臺DNS服務器運行,這樣可以避免在虛擬化設備之外運行的網絡應用程序破壞域名解析服務。
2. 記住,出于認證目的,微軟故障轉移集群服務需要使用集中管理的活動目錄域名控制器。如果你將所有的域名控制器進行虛擬化,故障轉移集群可能不會工作,或不提供故障轉移服務。因此,建議在該物理環境下保證一臺DNS服務器運行,這樣可是故障轉移集群如期工作。
3. 虛擬主機也需要使用DNS服務器服務。建議將虛擬主機上的DNS設置為使用外部DNS服務器,這樣即便所有虛擬域名控制器下線,域名解析也能照常工作。
在多臺主機上架設虛擬域名控制器
了解一臺虛擬主機很重要,虛擬域名控制器在這里運行,它也會有硬件和軟件故障。虛擬主機的損壞不應該 造成虛擬活動目錄域名控制器的損壞。
如果可能的話,最好的做法就是將虛擬域名控制器分散在多個虛擬主機上,這樣可以防止服務中斷。