VMware主機資源由您來靈活配置
默認情況下,VMware主機給每個虛擬機分配相同數量的CPU、RAM以及I/O資源。但是并不是所有ESXi的工作負載天生相同。
因為典型的VMware主機上運行多個具有不同工作負載的虛擬機,因此手動調整分配給每個虛擬機的資源是重要的。這一實踐確保了每個工作負載接收足夠的資源,而且資源被有效分配,能夠在ESXi主機上放置數量最多的虛擬機。
測量VMware主機工作負載
調整VMware主機資源之前,你應該分析虛擬機工作負載。為查看ESXi當前資源分配情況,在vSphere Client中選擇“資源分配”選項卡。如果沒有配置資源設置,VMware主機資源將被平均分配。
圖1 默認情況下,沒有對虛擬機進行VMware主機資源限制
在“資源分配”選項卡下,你將看到當前使用的內存和CPU的總容量。如果當前使用的數字接近ESXi主機的***容量,你可以調整以提高主機效率。
圖2 在重新分配資源前,查看主機的當前狀態
查明主機當前資源的使用情況后,檢查每個虛擬機的資源分配情況,你將發現更改CPU和內存設置的選項。為改變這些參數,單擊“編輯”,打開虛擬機屬性窗口。接下來選擇“資源”選項卡訪問資源使用設置。
VMware主機的CPU分配
對于CPU資源分配來說,你可以改變三個選項:
CPU限額:默認情況下,每個虛擬機獲得1000份限額。為提高或降低虛擬機的優先級,你可以增加或減少虛擬機的限額。舉例來說,如果你想確保繁忙的數據庫服務器相對于不太繁忙的Web服務器使用兩倍的CPU周期,設置數據庫服務器的限額為2000,設置Web服務器的限額為500。
CPU資源的最小值:你可以留出一定數量的CPU資源,一直可供該虛擬機使用。
CPU資源的***值:雖然默認情況下不限制虛擬機可以使用的CPU周期,但在很多情況下設置一個合理的虛擬機通常不會超過的***值是有意義的。
圖3 在繁忙的VMware主機上,調整虛擬機當前的CPU資源分配。
VMware主機的內存分配
對于內存資源,情況有所不同。每個虛擬機接受一個默認的內存分配,但是你可以基于虛擬機的工作負載更改分配給每個虛擬機的內存數量。甚至在你分配一定數量的內存給虛擬機之后,主機將按需動態給虛擬機分配內存,直到指定的標準。
如果想確保虛擬機總是得到一定數量的內存,同樣可以指定最小分配。即使虛擬機沒有處于運行狀態,主機將不會分配這部分內存給另一個虛擬機。換句話說,通過增加預留給虛擬機的內存數量,減少了主機使用內存過量分配的靈活性。這反過來,限制了一個主機能夠運行的虛擬機數量。
同樣可以設置虛擬機的***內存,這不是真的有用。虛擬機***內存也是一個不能動態調整的固定數量的內存,同樣限制了靈活性。
管理VMware主機I/O資源
同樣可以限制虛擬機的IOPS值。默認情況下,不限制虛擬機每秒可以發送和接收的IO數,但是將數據庫服務器可用的IOPS值設置為高于很少使用的Web服務器的IOPS可能是有意義的。要做到這一點,調整每個虛擬機的共享值。