考慮下列案例:
- 您嘗試新增虛擬機器主機到 Microsoft 系統中心虛擬機器管理員 (VMM) 2008 R2。
- 虛擬機器主機已超過 16 個邏輯處理單位。比方說虛擬機器主機有四個 6 核心處理器。
在這種情況下虛擬機器管理員服務 (Vmmservice.exe) 」 當機正在執行 VMM 2008 R2 的電腦上。
如果您設定這個問題的追蹤時,追蹤記錄檔可能表示發生下列例外狀況:
09435 00009433 273.19396973 [5684] 1634.16A4::07/22-20:50:29.545#26:VmRefresher.cs(182): System.InvalidOperationException: 可為 Null 的物件必須有值。
09436 00009434 273.19396973 [5684] 在 system.nullable`1.get_Value()
09437 00009435 273.19396973 [5684] 在 Microsoft.VirtualManager.engine.Adhc.WindowsHostDataProperties.GetProcessorData()
09438 00009436 273.19396973 [5684] 在 Microsoft.VirtualManager.engine.Adhc.WindowsHostDataProperties.PopulateProperties()
此外,VM 管理員記錄檔會記錄下列事件。
事件識別碼 19999記錄檔名稱: VM 管理員
來源: 虛擬機器管理員
日期: Date_and_Time
事件識別碼: 19999
工作類別: 無
層級: 錯誤
關鍵字: 傳統
使用者: N/A
電腦: ComputerName
描述: 虛擬機器管理員 (vmmservice:2516) 已發生錯誤,結束處理序所需。Windows 會產生一份錯誤報告以下列的參數:
事件: VMM20
P1 (appName): vmmservice
P2 (appVersion):2.0.3444.0
P3 (assemblyName):E.Adhc.operations
P4 (assemblyVer):2.0.3454.0
P5 (methodName):M.V.E.A.WindowsHostDataProperties.GetProcessorData
P6 (exceptionType):System.InvalidOperationException
P7 (callstackHash): e9f1
事件識別碼 1記錄檔名稱: VM 管理員
來源: 虛擬機器管理員
日期: Date_and_Time
事件識別碼: 1
工作類別: 無
層級: 錯誤
關鍵字: 傳統
使用者: N/A
電腦: ComputerName
描述:
System.InvalidOperationException: 可為 Null 的物件必須有值。
在 system.nullable`1.get_Value()
在 Microsoft.VirtualManager.engine.Adhc.WindowsHostDataProperties.GetProcessorData()
在 Microsoft.VirtualManager.engine.Adhc.WindowsHostDataProperties.PopulateProperties()
在 Microsoft.VirtualManager.engine.Adhc.WindowsHostAbstractionLayer.GetHostProperties (HostData oldHostData)
在 Microsoft.VirtualManager.engine.Adhc.HostRefresher.GatherAllInformation (主機主機、 物件 agentRefreshSyncObj、 guid taskID)
在 Microsoft.VirtualManager.engine.Adhc.HostRefresher.RefreshLockedHost 主機主機 (guid taskID)
在 Microsoft.VirtualManager.engine.BitBos.VMRefresherBase.UpdateHostToResponding(nullable`1& prevState)
在 Microsoft.VirtualManager.engine.BitBos.VMRefresherBase.UpdateHostState (IVMComputerSystemSummary [] & vmComputers 可為 Null ` 1 & prevState)
在 Microsoft.VirtualManager.engine.BitBos.VMRefresherBase.RunLightRefresher()
在 Microsoft.VirtualManager.engine.BitBos.VMRefresherBase.UpdateHostandVMs (VMRefresherType refresherType、 guid vmObjectId,VM tempVm)
在 Microsoft.VirtualManager.engine.BitBos.VmLightRefresher.RefreshData (HostReference hostRef)
在 Microsoft.VirtualManager.engine.RefreshDriver`1.RefreshThreadFunction(object obj) 2146233079
附註事件識別碼 19999 及追蹤記錄檔兩者都表示已發生下列問題:
- WindowsHostDataProperties.GetProcessorData 函式呼叫
- 一個 System.InvalidOperationException 例外狀況
- 一個 Nullable ` 1 物件
解決方法 1
如果要解決這個問題,限制作業系統會使用到 16 的 CPU 數目。要這麼做,請您執行下列步驟:
- 按一下 [開始]、 按一下 [執行],輸入 msconfig,並按下 ENTER。
- 在 [開機] 索引標籤上按一下 [進階的選項]。
- 按一下以選取 的處理器數] 核取方塊,然後選取 [16 或較小的值。
- 按一下 [確定]。
- 重新啟動電腦。
解決方法 2
要解決這個問題在 BIOS 中,將
叢集技術] 設定為 [
實體。此設定的預設值是
邏輯。
解決方法 3
如果要解決這個問題,強制作業系統以使用實體的進階可程式化中斷控制器 (APIC)。要這麼做,請您執行下列步驟:
- 使用系統管理員權限來開啟命令提示字元。
- 在命令提示字元中,請輸入下列指令,並按下 ENTER:
BCDEdit /set USEPHYSICALDESTINATION 了是
- 重新啟動電腦。
附註解決方法 2 及因應措施 3 可讓您使用最多 24 個處理器。這項功能時套用更新 956710,只使用。
如需詳細資訊,請按一下下列的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
956710
(http://support.microsoft.com/kb/956710/
)
一個 Hyper-V 更新有增加的邏輯處理器和 Windows Server 2008 x x64 型電腦上的虛擬機器數目
文章編號: 976639 - 上次校閱: 2009年11月26日 - 版次: 2.0
這篇文章中的資訊適用於:
- Microsoft System Center Virtual Machine Manager 2008 R2 Workgroup Edition
| kbmt kbtshoot kbexpertiseinter kbsurveynew kbprb KB976639 KbMtzh |
機器翻譯重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:
976639
(http://support.microsoft.com/kb/976639/en-us/
)
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。