VMware 虛擬機器效能問題完整解析

硬體和軟體問題有時會導致虛擬機器(VM)效能不佳,這可能會降低虛擬環境的便利性與靈活性。閱讀這篇部落格文章,了解當虛擬機器運行緩慢時,如何提升 VMware 虛擬機器的效能。探索導致虛擬機器效能下降的最常見問題,並了解可能的解決方案。

NAKIVO for VMware vSphere 備份

NAKIVO for VMware vSphere 備份

為 VMware vSphere 虛擬機器提供完整的資料保護及快速還原選項。支援本地、異地及雲端的備份目標。具備防勒索軟體功能。

改善虛擬機器效能的原因

讓我們來看看執行診斷並改善虛擬機器效能的主要原因:

  • 虛擬機器的效能比在另一部主機上執行的相同虛擬機器慢。
  • 應用程式的執行速度比預期慢。不過,將虛擬機器遷移至另一部主機後,應用程式的效能便恢復正常。
  • 應用程式需要很長時間才能啟動。
  • 正在執行的應用程式沒有回應。
  • CPU、記憶體或磁碟使用率達到 100%。

CPU 和記憶體

硬體資源不足是造成虛擬機器效能緩慢的最常見原因之一。如果未提供足夠的 CPU 資源給虛擬機器,虛擬機器內的軟體可能會執行緩慢且延遲。若要修正此問題,請設定虛擬機器使用更多 CPU 核心,或新增更多虛擬處理器。此外,如果主機的處理器較舊,而且核心數量少、快取較小且頻率較低,請考慮升級主機的硬體。

設定虛擬機器的 RAM 容量時,請確認提供的 RAM 足以供虛擬機器使用。同時,主機也必須有足夠的 RAM。如果未提供足夠的記憶體給虛擬機器,客體作業系統 (OS) 會頻繁使用暫存檔,導致整體虛擬機器效能緩慢。如果為虛擬機器提供大量記憶體,卻沒有為主機作業系統保留足夠的記憶體,主機作業系統就會使用暫存檔,導致作業系統和應用程式的效能降低。此外,在這種情況下,虛擬機器效能也會降低。請勿為虛擬機器指派過多記憶體,同時也要為主機保留一些記憶體。請務必提供足夠的記憶體給主機。

請閱讀作業系統和應用程式的系統需求。讓我們來看一個例子。您的主機有 8 GB 記憶體,並執行 ESXi 7.0 或搭載 VMware 工作站 的 Windows 10。一部 Windows Server 2019 虛擬機器正在這部主機上執行。如果您為 Windows Server 2019 虛擬機器配置 4 GB RAM,主機作業系統便會剩下 4 GB RAM。這足以讓主機作業系統和客體作業系統正常運作 (不執行其他會耗用資源的應用程式)。比例為 1:2 (4 GB/8 GB),而 1/2-1=-0.5 是目前的 MEM overcommit avg 值。如果您為執行 Windows Server 2019 的虛擬機器提供 2 GB RAM,虛擬機器的效能就會變慢。

若您為 Windows Server 2019 虛擬機器 (VM) 配置 6 GB 記憶體,主機的記憶體容量將不足,導致實體機器與虛擬機器皆運行緩慢。

若您在虛擬機器上執行資料庫等資源密集型應用程式,請調整虛擬機器設定,並據此增加 CPU 與記憶體資源。

記憶體超額分配 實體機器 是指資源總分配量超過實際容量的狀況。 若您擁有一台配備 8 GB RAM 的主機,並在該主機上運行五台各配置 2 GB RAM 的虛擬機器,由於記憶體已超額配置(若所有虛擬機器皆處於高記憶體使用率狀態),所有虛擬機器及主機的效能都可能下降。若部分虛擬機器正在運行但負載較輕,由於 ESXi 會優化記憶體利用率,因此記憶體主要會被高負載的虛擬機器佔用。在測試環境中,記憶體超額配置是合理的。

此外,請檢查記憶體氣球特點及其設定,以從虛擬機器回收未使用記憶體,從而有效利用實體記憶體。有時,當虛擬機器需要使用磁碟作為交換空間時,此特點可能會影響虛擬機器的效能。

命令列 CPU 超額配置 esxtop。VMware 提供了合理資源使用的技術,讓您能為虛擬機器配置的虛擬處理器數量超過主機上的實體 CPU 核心數。 CPU 超額配置參數是指分配給虛擬機的虛擬處理器數量與主機上實體 CPU 核心數量的比例。若該值為 3:1,則無需擔心;若為 5:1,虛擬機效能將下降;若 CPU 超額配置值達到 6:1 或更高,虛擬機運作將顯著變慢,並可能引發諸多問題。
VM-performance-monitoring-in-the-ESXi-command-line 如何解決 CPU 與記憶體問題?
請考慮升級硬體並為
(您用來執行虛擬機的主機)增加更多記憶體。請確保記憶體容量充足,以防止主機和來賓作業系統使用暫存檔。避免記憶體超額配置。

有時 CPU 電源管理特點可能會導致虛擬機效能低下。請嘗試停用這些特點。

1.0 – 表示 CPU 已完全利用

0.5 – 表示 CPU 利用率為一半 (50%)

2.0 – 表示 CPU 負載超標兩倍,必須採取措施

按下以下鍵盤組合可切換檢視模式: c – CPU 指標(預設顯示), m – 記憶體, n – 網路, d – 磁碟。按空白鍵即可更新顯示的值(這些值每 5 秒會自動更新)。按 h 可取得說明,按 q 可結束。

請檢查 MEM overcommit avg 參數,以檢查 ESXi 上的記憶體使用情況。 MEM overcommit avg 值如下:要求的記憶體與可用記憶體的比率減去 1。此參數的建議值為 0 或更低。

如果您使用安裝在 Linux 或 Windows 上的 VMware Workstation 執行虛擬機器,請使用作業系統上提供的標準系統監控工具。

請檢查客體作業系統上的 CPU/記憶體使用情況。某些應用程式可能無法正常運作,並耗用所有 CPU(CPU 核心)資源。請檢查正在執行的處理程序,找出佔用 CPU 的處理程序。請檢查主機上實體處理器的溫度,因為溫度過高(超過 80 °C)會造成效能問題,並對處理器構成風險(處理器可能會損壞)。

升級硬體──在主機上安裝更強大的 CPU 或更多處理器。請檢查虛擬機器組態。如果虛擬機器的虛擬處理器數量超過所需數量,請減少虛擬機器的虛擬處理器數量,為主機釋出資源。

在 VMware vSphere 中,您可以使用 DRS 叢集(分散式資源排程器),將虛擬機器從超載的 ESXi 主機遷移至具有可用硬體資源的 ESXi 主機。

磁碟問題

儲存系統的效能低落,會導致將虛擬磁碟儲存在該儲存系統上的虛擬機器效能低落。儲存延遲對虛擬機器效能至關重要。請嘗試使用 SSD(固態硬碟)儲存虛擬機器。如果無法使用 SSD,請使用轉速為 7200 RPM 或 10000 RPM 的 HDD(硬碟機)。轉速為 5400 RPM 的硬碟機效能極低。建議使用採用 SAS 介面的磁碟。

如果您使用 VMware Workstation,可依照上述建議,將虛擬機器儲存在外接 SATA(eSata)或 USB 3.0 磁碟上。請勿在虛擬機器關閉電源之前中斷外接磁碟的連線。

在生產環境中,請使用不可擴充或預先配置的厚置備磁碟。完整歸零的 厚實的配置 磁碟在首次寫入作業時速度較快。

如果您使用 HDD 儲存虛擬機器,請對此實體磁碟機或磁碟陣列進行重組,並在虛擬機器設定中對虛擬磁碟進行重組。使用分割區以減少磁碟碎片。 在其中一個分割區安裝作業系統,並將應用程式使用的檔案(例如資料庫)儲存於另一個分割區。

檢查 HBA(主機匯流排適配器)的韌體是否為最新版本。 在伺服器上更新 HBA 的韌體。

檢查磁碟健康狀態。執行磁碟與檔案系統的診斷。若磁碟已損壞,請立即更換。

檢查介面(SAS、SATA)連接線。

磁碟加密會因開銷而降低效能。若加密對虛擬機器並非關鍵需求,請將虛擬機器檔案移至未加密的儲存空間,或關閉磁碟加密功能。

使用獨立(硬體)RAID 控制器,以獲得更高的效能與可靠性。

請確保虛擬機器內的磁碟有足夠的可用空間。磁碟空間不足會導致效能下降,因為作業系統和應用程式無法寫入暫存檔。

您可以將虛擬機器遷移至未過載的另一顆磁碟或磁碟陣列。在 VMware vSphere 中,請考慮使用 DRS 和 Storage DRS。減少在同一 LUN 或資料存放區上運行的虛擬機器數量。

快照

虛擬磁碟快照 會降低虛擬磁碟的效能。 每個快照都會產生一個虛擬磁碟的增量 VMDK 檔案。此機制採用”寫入時複製”(Copy-on-Write)機制。每個增量 VMDK 檔案包含與父 VMDK 檔案相比的資料差異(變更日誌),而虛擬機器在與虛擬機器磁碟互動時,會讀取所有這些資料。結果,資料會從同一物理磁碟上的多個虛擬磁碟檔案中讀取,這會降低虛擬機器的效能。 基於同樣的原因,請勿在 VMware Workstation 中為虛擬機器使用分割 VMDK 檔案(此選項是為不支援大於 4 GB 檔案的舊式檔案系統所設計)。隨著快照數量增加,磁碟負載也會隨之增加。 快照 通常僅用於臨時目的(例如,在備份作業期間複製資料,或在虛擬機器內安裝或測試應用程式)。 請儘快刪除或提交快照。

在 VMware Workstation 中,您應先關閉虛擬機器、關閉 VMware Workstation,然後執行以下命令,並在其中指定現有主 VMDK 檔案的路徑以及新虛擬磁碟檔案的路徑:

"C:Program Files (x86)usernameVMware Workstationvmware-vdiskmanager.exe" -r

"D:VMsVM-foldervm-name.vmdk" -t 0 "D:VMsVM-folderNewDisk.vmdk"

接著重新設定虛擬機器以使用新的虛擬磁碟,或建立新的虛擬機器,並設定其使用新的整合式虛擬磁碟。

在 ESXi 上,請執行以下指令以移除快照:

vmware-cmd path_to_vmx_file removesnapshots

或

vim-cmd vmsvc/snapshot.removeall VMID

您可透過此指令查看 VMID:

vim-cmd vmsvc/getallvms

若已使用分割的 VMDK 檔案,請將其合併。 請在安裝了 VMware Workstation 的 Windows 電腦上執行以下指令:

"C:Program Files (x86)VMwareVMware Workstationvmware-vdiskmanager.exe" -r splitdisk.vmdk -t 0 mergeddisk.vmdk

將對效能敏感的資料儲存於速度較快的磁碟上。

VMware Tools

請確保客體作業系統已安裝 VMware Tools。 VMware 工具 是一組用於提升虛擬機器效能與使用者體驗的驅動程式和工具集。安裝 VMware Tools 後,圖形效能將得到提升。滑鼠動作會同步,且運作時不會出現延遲。透過 VMware Tools,您可以以全螢幕模式運行虛擬機器,並獲得更高的效能。 檢查 VMware Tools 是否已安裝。

在 Windows 中,請點擊系統托盤中時鐘附近的 VMware Tools 圖示,或前往 C:Program FilesVMwareVMware Tools (此為預設目錄)並執行以下指令:

VMwareToolboxCmd.exe -v

在 Linux 中,請在終端機中執行以下指令:

vmware-toolbox-cmd -v

透過在 ESXi 命令列中讀取虛擬機器日誌,檢查虛擬機器客體系統上的 VMware Tools 版本:

grep toolbox /vmfs/volumes/datastore/vm_name/vmware.log

或

grep build- /vmfs/volumes/datastore/vm_name/vmware.log

在 VMware vSphere Client 中,檢查虛擬機器上運行的客體作業系統是否已安裝 VMware Tools。 有關 VMware Tools 的資訊(狀態與版本)會顯示在虛擬機的” Summary “分頁中。

Install-VMware-Tools-to-improve-VM-performance

網路問題

若您的 ESXi 主機連接到 SAN(儲存區域網路)或 NAS (網路附加儲存裝置)等儲存裝置,請確保網路速度足夠且網路未過載。

為確保高效能,您應在 vSphere 中使用獨立的 ESXi 管理網路 網路、 vMotion 網路以及儲存網路。

針對使用 虛擬交換器的 ESXi 主機,請設定 NIC 綑紮(鏈路聚合)。

若現有網路頻寬不足以滿足需求,請考慮進行網路升級。 例如,可將現有的 1 Gbit 設備替換為 5 Gbit 或 10 Gbit 的網路介面卡、交換器及路由器。

防毒軟體

請確保主機上的防毒軟體不會掃描虛擬磁碟檔案,因為掃描這些檔案會降低虛擬機器 (VM) 的效能。您可以將虛擬機器目錄中的 VMDK 檔案排除在防毒掃描範圍之外。

檢查主機作業系統及來賓作業系統上運作的作業系統健康狀態。確保沒有病毒或其他惡意軟體,或 勒索軟體。

建議在 ESXi 主機上使用與 VMware vShield 協同運作的專用防毒解決方案,而非在每台虛擬機的來賓作業系統上安裝防毒軟體。此方法可提升效能,對於大型虛擬環境而言更為合理。若使用 vShield,請正確配置此軟體,因為錯誤的配置可能會降低虛擬機的效能。

Hyper-V 相關問題

如果您使用 VMware Workstation 15.5 或更新版本,且該版本支援在 Windows 主機上安裝 Hyper-V 特點 時執行 VMware 虛擬機器,VMware 虛擬機器的效能可能會較慢。安裝 Hyper-V 角色時,Hyper-V 會直接使用 CPU 虛擬化特點,例如 Intel VT-x 或 AMD-V;當這些特點由 Hyper-V 使用時,VMware Workstation 的虛擬機器監視器(VMM)就無法使用,而 VMM 必須在特權模式下執行。為了確保相容性,VMware Workstation 的 VMM 會以使用者模式或 ULM 模式(而非特權模式)執行,因為 Hyper-V 使用 CPU 硬體虛擬化特點時,VMM 無法存取這些特點。在此情況下,VMM 會使用 Microsoft 的 WHP API,這些 API 會在 VMM 與 CPU 之間增加一層,並降低 VMware 虛擬機器的效能。

請從 Windows 主機電腦解除安裝 Hyper-V 及相關功能,例如虛擬化型安全性。之後,VMware Workstation 的 VMM 會以特權模式執行,並直接使用 CPU 虛擬化特點,以提供高效能。此解決方案有助於修正 VMware 虛擬機器效能緩慢的問題。

虛擬機器效能監控

虛擬機器效能監控是偵測負載過高及相關效能問題的常用方法。虛擬機器效能監控有助於您排除問題原因。請記得在主機層級監控虛擬機器效能,而不是在客體作業系統內監控。客體作業系統不瞭解動態資源分配等虛擬化特點,因此可能會顯示不正確的資料。VMware 在主機層級提供計數器。這些計數器會提供正確資訊,並用於虛擬機器效能監控。為了讓您瞭解如何在虛擬機器內收集效能資訊,VMware 開發了虛擬機器專用的計數器程式庫,讓您在 Windows 客體作業系統中使用 Perfmon 公用程式檢視正確的虛擬機器效能資訊。若要監控虛擬機器效能,必須在客體作業系統上安裝 VMware Tools。

若要在 VMware vSphere Client 中檢查已使用的硬體資源,請選取一部虛擬機器,開啟”監控”索引標籤,然後選取 Performance > Overview or Performance > Advanced 以檢視圖表和其他資訊。在 Overview 頁面上,您可以即時檢視 CPU、記憶體、網路和儲存體的使用率(可用空間、已使用空間及輸入/輸出效能),也可以檢視前一天、前一週、前一個月、前一年或自訂期間的使用率。請在此頁面上的兩個下拉式功能表中選取這些選項( 期間 和 檢視 )。 VM-performance-monitoring-in-VMware-vSphere-Client

在”Utilization“索引標籤中按一下 Monitor,即可查看虛擬機器 CPU、虛擬機器記憶體及客體記憶體使用情況的其他資訊。

Virtual-machine-performance-monitoring

同樣地,您可以在 vSphere Client 中選取 ESXi 主機或 叢集,並即時監控已使用和可用的資源,也可以監控所選期間內的資源使用情況。

結論

本文說明了討論虛擬機器效能問題時需要注意的要點,以及有助於提升虛擬機器效能的建議。您應確保硬體能提供足夠的效能、避免記憶體超額配置,並正確設定軟體。使用虛擬機器效能監控來找出虛擬機器效能緩慢的原因。

磁碟損壞是造成虛擬機器效能緩慢的最嚴重問題,因為除了虛擬機器效能不佳之外,您也可能會遺失資料。若要避免資料遺失,請定期執行 VMware 資料備份。使用 NAKIVO Backup & Replication 進行 VMware 備份 – 這是一項通用的資料保護解決方案,支援 VMware vSphere 7.0,並提供許多實用功能,以提升備份速度和可靠性。

試試 NAKIVO Backup & Replication

試試 NAKIVO Backup & Replication

立即申請免費試用,全面探索本解決方案的所有資料保護功能。免費試用 15 天。無任何特點或容量限制。無需提供信用卡資訊。

People also read