如果只有兩個GuestOS,以規(guī)格來看,瓶頸應(yīng)不會在CPU性能上,反而是硬盤I/O跟網(wǎng)絡(luò)速度的性能比較有可能,而內(nèi)存數(shù)量及使用規(guī)劃也要注意。另外如果是無法長期停機(jī)的機(jī)器,需要評估備份或后備規(guī)劃,以及后備系統(tǒng)版權(quán)授權(quán)規(guī)定及費用。
關(guān)鍵瓶頸是磁盤I/O,并非CPU.需要跟進(jìn)的事情是:
1.在舊主機(jī)上面,先監(jiān)測出跑報表所需要的IOPS有多少?并精算VM硬盤。
2.如果文檔復(fù)制會占用主機(jī)所有的IOPS,這種工作不適合跟其他VM共享磁盤。
所以,如果要拆開,主因并不是CPU不夠用(跑報表跟文檔復(fù)制,根本用不到多少CPU資源),而是磁盤的I/O資源會被文檔復(fù)制全部占用,造成其他的VM排隊等候。
想想看,一個VMHost上面有多少VMGuest,要同時存取I/O?
而且,在VMHost可以設(shè)定分配給每個VMGuest服務(wù)器的CPU、Memory資源量(Min/Max),以及VMHost保留多少自己用(如果VMHost自己都跑不動,要怎么去管理VMGuest)。
在虛擬化軟件的選擇上,如果是VMwareESX(i),可以透過vSphereClient或vCenter新增Resourcepool,來設(shè)定GuestOS的CPU資源。
可以測試一下:報表跑數(shù)據(jù)大量擇取的時候,使用“Windows工作管理員/處理程序”查看CPU與內(nèi)存以及I/O的狀態(tài)。
雖然將它們放在同一臺主機(jī),但是文檔服務(wù)給它一個完全獨立的磁盤子系統(tǒng),不跟其他VM共用,那這樣就不會有以上的顧慮,還是可以放在一起。
例如,你可以買一臺SAN給文檔服務(wù)的VM專用,但另買一臺SAN給其他的VM共用,最后,數(shù)據(jù)庫的問題還是要回到IOPS上來。我遇過80%以上想做虛擬化的新手,都不知道原本舊主機(jī)上數(shù)據(jù)庫的瓶頸是在DiskI/O.一般說來,跑ERP報表吃掉1,000~3,000IOPS是很常見的狀況,這代表RAID至少要5到15顆以上來組合,才足夠應(yīng)付這樣的IOPS.
根據(jù)以往的經(jīng)驗,在看到這個數(shù)據(jù)之前,用戶都一直認(rèn)為瓶頸是CPU,所以要換新主機(jī)來提升CPU,但看過監(jiān)測數(shù)據(jù)之后才知道,其實瓶頸都在IOPS.
補(bǔ)充一下,一般狀況下,一顆SATA硬盤的IOPS只有70到80左右,一顆15KSAS硬盤的IOPS,大約200到240左右。組成RAID多顆硬盤時,IOPS會跟著你的硬盤數(shù)量而增加,例如使用96顆硬盤組成RAID-5的一臺DellMD3200i,實測數(shù)據(jù)上,IOPS可以高達(dá)40,000.