2010-03-04 54 views
0

在涉及虛擬化和電源管理的研究項目中,我正在測試各種資源分配方案和定製電源管理算法。我有興趣將虛擬機隔離爲僅使用某個CPU內核。Hyper-V,VMware ESX和定製電源管理

我正在考慮使用Windows 2008R2和Hyper-V,但Hyper-V不允許爲虛擬機設置CPU關聯性,有沒有什麼方法可以確保運行CPU密集型任務的虛擬機將使用只有一個CPU核心(虛擬機配置爲使用單個CPU),其他核心可用於其他任務?

VMware ESX Server是一個有趣的選擇,因爲它提供了我需要的設置(包括熱內存添加),但它看起來像一個封閉的系統。根據我的理解,基於Linux的ESX Server操作系統允許安裝自定義應用程序,通過它來控制與物理服務器組件的電源管理相關的方面(例如執行CPU頻率縮放)。它是否提供任何API?我知道該產品已經具備電源管理功能,但我正在尋找實現自定義實施的手段。除了這兩種解決方案之外,您還可以推薦其他的虛擬機管理程序,這些虛擬機管理程序提供諸如設置CPU關聯性,CPU限制和預留,熱內存添加以及允許在主機服務器上運行自定義應用程序的功能(還提供API以編程此類應用程序) - 也許Citrix XenSource,KVM(我不熟悉這些解決方案)?

回答

0

我不認爲VMware會支持對服務器的修改,但是您可以在ESX服務器上獲得一個命令行,基本上你是對的,它是linux下的(RedHat mod我相信)。

Xen/KVM是開源的,所以你可以破解。如果您有預算限制,社區將支持您,您可能會被建議去KVM路線。在企業環境中包含Citrix可能會遇到麻煩。

+0

這只是一個研究項目,我主要是在尋找一個概念證明,而不是一個完整的解決方案實現,因此預算不是問題。 KVM看起來很有趣,但是從我讀過的內容來看,設置每個虛擬機的硬件CPU限制是不可能的 - 這種功能對我來說絕對是必須的。關於ESX,命令行根本就不夠用。 – kjv

0

有沒有什麼辦法可以確保虛擬機中運行的CPU密集型任務將使用CPU

的OpenStack(KVM作爲虛擬機管理程序)的只有一個核心提供CPU的牽制通過功能您可以將vCPU綁定到物理CPU內核。讓我知道你是否需要關於這個主題的更多信息。

這是一個link解釋功能。此鏈接還確認Hyper-V不支持CPU鎖定。

+0

剛剛意識到這是一個非常古老的問題。無論如何,它可能有助於某人。 – Ubercool