【虛擬化實戰】Cluster設計之一資源池

技術小甜發表於2017-11-15

作者:範軍 (Frank Fan) 新浪微博:@frankfan7

資源池是Cluster設計中的一個重要概念,本文介紹了為什麼用資源池,怎麼用好資源池,以及澄清了一些常見的誤區。

概念

每個ESXi主機和Cluster預設都有一個Root資源池。如果沒有新的自由池建立的話,整個系統僅僅有一個資源池。

072854908.png

圖中所示RP-Marketing和RP-QA是在Root資源池內新建立的資源池,他們和root資源池是父子關係,他們之間是兄弟關係。

RP-QA-UI是RP-QA下的子資源池。

為了簡化管理,通常不建議在資源池內建好幾級子資源池,2級資源池應該可以滿足絕大多數的情況。


二 為什麼使用資源池

授權管理

vCenter管理員可以為每個部門建立資源池,授權特定使用者管理該部門的資源池。這樣vCenter管理員就無需過多介入對各部門內部資源的控制。

統一策略:

對每個VM進行資源控制費時費力,把有共同需要的VM分配到相應的資源池,可以很便捷的實現資源控制。

資源分離:

對一個資源池的設定改變不會影響到其他資源池,

基本設計原則

不要僅僅因為邏輯區分或者訪問控制的原因,來使用資源池。其實資料夾可以更好的實現該目的。

為了簡化管理和減少資源開銷,建議資源池的深度不要超過2

不要把虛擬機器和資源池分在同一級

不要過度分配資源。在建議資源池之前,檢查上一級資源池可供分配的資源。

四 SeparateESXi Cluster vs Resource Pool

如果僅僅從資源分離的角度考慮,需要斟酌是建一個單獨的Cluster,還是在Cluster內建資源池。

建議考慮下面的因素:

Cluster內的主機數目

如果一個Cluster有8個以上主機,可以考慮為管理功能的VM設定單獨的Cluster。比如vcenter,vCloud,Database等等。 如果主機個數很少,而希望能充分利用資源,在Cluster內建立資源池是更好的選擇。

安全

有的公司有非常嚴格的安全策略,某些特定應用不可以和其他應用共享硬體。為此需要單獨設定Cluster,設定為該Cluster分配專屬的儲存資源。

效能

為了最大化效能的保障,考慮單獨的Cluster,能保證充足資源的供給。畢竟資源池還是要共享資源的,在資源競爭很厲害的情況下,資源池的份額設定為High,僅僅是有優勢搶到資源,但並不意味著就能滿足應用的需要。


五 例項

072857546.png

假設一臺主機由幾臺虛擬機器,分別屬於QA和Marketing部門。QA部分需要更多的資源。

設定如下

資源池

Share

Resource Allocation

RP-QA

High

4GHz, 2GB

RP-Marketing

Normal

2GHz, 1GB


這時候RP-QA內的兩個虛擬機器,一定比RP-Marketing內的虛擬機器更容易在有競爭的情況下搶佔到資源。

假如我們在RP-QA內再建立5個VM,那麼情況就不一定了。即使RP-QA的share設定為High,但每個VM能搶佔到的很有限。

雖然RP-Marketing的RP-Marketing的share設定為Normal,但僅有3個VM,可能每個VM可以搶佔的資源比RP-QA內的VM要多。

所以資源池的設定不是一勞永逸,需要密切注意池內的VM數量,可以寫一個指令碼來根據優先順序和VM的數量,自動計算該資源池應該設定的Share數值。


參考:

Resource Allocation Whitepaper

Expandable reservation on resource pools, howdoes it work?

http://www.vmware.com/pdf/vmware_drs_wp.pdf

本文轉自frankfan751CTO部落格,原文連結:http://blog.51cto.com/frankfan/1324634 ,如需轉載請自行聯絡原作者


相關文章