伺服器虛擬化計算器
計算虛擬機器工作負載的 ESX 主機需求
如何使用伺服器虛擬化計算器
- 1輸入物理伺服器數量與當前的 CPU/記憶體平均利用率。
- 2輸入目標整合比與新虛擬主機的規格。
- 3檢視減少後的主機數、節電與釋放的機櫃空間。
建模伺服器虛擬化
所需主機 = ceil(物理負載 / (主機容量 × 整合比));節電 = 物理功耗 − 所需主機 × 主機功耗虛擬化讓多臺利用率不足的物理伺服器共享更少但更大的主機,將利用率從常低於 15% 提升到 60–80%。
最大收益在於更少的需要供電散熱的裝置、更少的機櫃空間,以及更簡單的硬體生命週期管理。
虛擬化整合比(Consolidation Ratio)指每臺物理機上執行多少臺虛擬機器。**不能只看 CPU 利用率**——真正決定上限的通常是記憶體和磁碟 IOPS。經驗做法:① CPU 可按 3:1 到 5:1 超配(vCPU 總和 vs 物理核),因為 VM 的 CPU 峰值很少同時出現;② **記憶體基本不能超配**(除非啟用記憶體複用技術如透明頁共享 TPS、記憶體氣球 ballooning、壓縮;VMware 的記憶體超配通常控制在 1.2:1 以內);③ **儲存 IOPS 是最容易被低估的瓶頸**——10 臺各需 200 IOPS 的 VM 就需要 2,000 IOPS,普通機械盤陣列(每塊 150 IOPS)要十幾塊才夠。
**規劃容量時必須留 N+1 冗餘**:整合理念是「任意一臺物理機故障時,剩餘主機仍能承載全部 VM」。所以 4 臺主機的叢集,每臺的平均負載不應超過 75%(4 臺變 3 臺,3 ÷ 4 = 75%)。如果要求 N+2(可承受兩臺同時故障),則不超過 66%。**另外要為 VM 本身的資源開銷預留**:每臺 VM 有 200–500 MB 的記憶體開銷(虛擬化層執行的開銷),vCPU 數量過多還會因排程等待導致效能下降(**「vCPU 越多越慢」是常見誤區**——分配超過實際需求的 vCPU 會因 CPU 就緒時間上升反而變慢)。
| 工作負載型別 | CPU 利用率 | 建議整合比 | 瓶頸 |
|---|---|---|---|
| 檔案/列印伺服器 | 5% – 10% | 10:1 到 15:1 | 記憶體、磁碟 IO |
| Web 伺服器 | 10% – 30% | 8:1 到 12:1 | 網路、併發 |
| 應用伺服器 | 20% – 40% | 5:1 到 8:1 | CPU |
| 資料庫(中小型) | 30% – 60% | 2:1 到 4:1 | 記憶體、磁碟 IOPS |
| 資料庫(大型 OLTP) | 50% – 80% | 1:1 到 2:1 | IO、延遲敏感 |
| VDI 虛擬桌面 | 波動大 | 4:1 到 8:1(每核) | 啟動風暴、記憶體 |
| 開發/測試環境 | 低且間歇 | 15:1 到 20:1 | 無(可超配) |
虛擬化整合比參考
常見問題
整合比多少算合理?
通用負載常見 10:1 到 20:1,對延遲敏感型則更低。
虛擬化一定省電嗎?
整體設施功耗一定下降,儘管單臺主機比被替換的舊伺服器更費電。
授權怎麼辦?
虛擬化層與客戶機作業系統授權可能抵消收益,承諾前應一併建模。
為什麼物理機跑得好好的,虛擬化後變慢?
四個常見原因:① **CPU 就緒時間(CPU Ready)**——VM 等待物理 CPU 的時間,超過 5% 就明顯示卡頓,通常因超配過高或 vCPU 過多;② **記憶體交換(Swap/Balloon)**——記憶體超配導致主機記憶體不足,把 VM 記憶體換到磁碟,效能斷崖式下降;③ **儲存 IO 爭搶**——多個 VM 共享同一 LUN,IO 佇列排隊(檢查儲存延遲,> 20 ms 就有問題);④ **NUMA 跨節點訪問**——給 VM 分配的記憶體超過單個 NUMA 節點時,跨節點訪問延遲高 30%–50%。**排查順序:先看 CPU Ready 和記憶體交換,再看儲存延遲。**
超配(Overcommit)安全嗎?
取決於型別和比例。CPU 超配 2:1 到 4:1 通常安全(只要監控 CPU Ready);記憶體超配要極其謹慎,建議不超過 1.2:1,且依賴記憶體複用技術(但應用程式無法感知這些技術,可能觸發內部 GC 或 OOM);**儲存容量可以用精簡置備(Thin Provision)超配,但要密切監控剩餘空間——一旦寫滿,所有 VM 會同時崩潰**,這是最危險的故障場景,建議保持至少 20% 的空閒空間並設定告警。
