WSFC 主機資源預留

Hyper-V羣集中未預留給VM虛擬機的物理內存量由主機使用,可是做爲羣集的一部分,主機一般會從羣集中的其餘節點接收VM 以保持其高度可用性, 這能夠是用戶發起的移動,例如從另外一個節點實時遷移VM,也能夠是資源或硬件故障的致使VM故障切換, 所以最初用戶對主機預留的內存沒有太多控制權,來自另外一個節點的VM 能夠輕鬆移動到特定節點並壓倒其內存, 所以引入羣集環境變量RootMemoryReserved,以確保羣集主機具備最少許的主機物理內存儲備
網絡


RootMemoryReserved屬性於2008R2首次引入,存在於WSFC 2008R2 2012 2012R2,在2016中消失ide


RootMemoryReserved性能


儘管名稱是這樣,但RootMemoryReserved變量並不能確保根分區會爲本身保留必定數量的物理內存, 而是指定主機操做系統與主機操做系統即將啓動的VM(經過用戶操做或故障轉移移動到該節點)的時間進行比較的內存大小,若是經過啓動VM,剩餘的主機OS物理內存將低於RootMemoryReserved指定的限制以及主機當前使用的內存,則VM啓動操做將失敗。spa


例如,在具備16 GB物理內存而且RootMemoryReserved設置爲1024 MB(1 GB),主機當前已使用1 GB內存的羣集節點上,而且若是每一個VM都佔用1 GB內存,則虛擬機的最大數量聯機爲14個虛擬機,由於主機操做系統已使用1 GB的內存,而主機操做系統保留另外1 GB的內存。 這爲主機保留了2 GB的內存,嘗試啓動第15 個虛擬機會使虛擬機的物理內存使用量超過15 GB,這會致使主機操做系統的物理內存保留時間低於主機操做系統當前使用的1 GB。 所以,第15 個 VM 的VM啓動操做將失敗。操作系統


RootMemoryReserved默認設置爲512 MB,對於除管理虛擬機以外沒有執行任何操做的主機虛擬機,這應該足夠了,此變量能夠由PowerShell cmdlet查看。blog


(get-cluster <cluster name>). RootMemoryReserved內存


要更改RootMemoryReserved,可使用如下PowerShell cmdlet將RootMemoryReserved設置爲1024 MB:資源


(get-cluster <cluster name>).RootMemoryReserved = 1024get

2018-03-04_102558.png


更改RootMemoryReserved不會影響任何已經運行的虛擬機, 例如,在具備16 GB物理內存的節點上,若是RootMemoryReserved設置爲512 MB,則主機當時使用480 MB,而且VM佔用15 GB內存,這將是可行的,主機得到512MB+480MB的可用內存,並不會所以從VM中回收內存cmd


另外若是因爲某種緣由(例如在主機上運行的另外一個應用程序)致使系統速度變慢,將RootMemoryReserved更改成2048 MB(2 GB)將不會自動釋放主機的物理內存,在這種狀況下,釋放主機物理內存的方法是脫機不重要的虛擬機, 所以,建議在使任何虛擬機聯機以前正確設置所需的RootMemoryReserved


RootMemoryReserved的最大值是4096 MB(4 GB),對高於4 GB的值的任何更改都將被忽略,並使用之前的值。 此外,做爲羣集參數的RootMemoryReserved適用於羣集中的全部節點,RootMemoryReserved中的值將用於保留集羣中全部節點上的VM主機內存。


RootMemoryReserved變量不限制主機可使用的內存量, 這個變量的目的是確保主機擁有最少的物理內存儲備,超出了當前用來控制虛擬機的數量。 主機可使用比RootMemoryReserved留出的值更多的內存。 所以,VM可用的物理內存量將等於或小於RootMemoryReserved未預留的內存量。


未通過預留設置的主機目前正在使用的內存能夠會隨着時間推移被VM擠壓,設置了RootMemoryReserved後則將確保主機除了當前使用的內存,會有一部分預留內存,永遠不會被VM佔用,僅維繫主機使用


老王點評:RootMemoryReserved能夠用於在2008R2-2012R2時代,合理對於羣集節點進行主機內存預留,防止主機徹底被VM或應用淹沒資源,確保主機性能,在沒有SCVMM的狀況下,能夠自帶原生控制主機內存預留,若是有SCVMM則更加智能,SCVMM不只能夠針對羣集設置,也能夠針對於單臺宿主機,或整個主機組設置,SCVMM的主機預留能夠從CPU、內存、磁盤空間、磁盤 I/O 、網絡容量來設置預留狀況。


主機預留和動態資源平衡功能能夠相配合,主機預留生效在啓動或移動虛擬機時,一旦檢測到超過最小預留值,則阻止虛擬機移動過來或啓動,動態資源平衡功能是設置一個平衡值,當一個主機組或羣集運做過程當中,一旦檢測到某個主機的負載超過了平衡值,則和其它負載輕的節點平衡資源,二者並不衝突

相關文章
相關標籤/搜索