VMware 虛擬機空間不足怎麼辦? VM突然當機?可能忘了清除快照!

VMware 虛擬機空間不足怎麼辦? VM突然當機?可能忘了清除快照!

正式環境中的VM突然Crashed,查到最後才發現是Snapshot(快照)造成的。
使用 VMware ESXi 虛擬化平台時,Snapshot(快照)是許多管理者用來備份、測試的重要工具。不過如果使用不當,快照檔案會迅速膨脹、佔滿 datastore 空間,導致虛擬機運作異常甚至中斷。為什麼快照會變大、空間不足的錯誤如何發生,以及如何安全清除 snapshot,避免 VM 再次崩潰風險。




閱讀全文: VMware 虛擬機空間不足怎麼辦? VM突然當機?可能忘了清除快照!

Snapshot快照為什麼會讓硬碟爆滿?

當你為 VM 建立 snapshot 時,VMware 會:

  1. 凍結原始磁碟檔案(如:dns.vmdk)為唯讀
  2. 產生 delta 檔案(如:dns-000001.vmdk)記錄所有新的寫入

這代表只要虛擬機持續運作、產生寫入,delta 檔就會持續膨脹,不會自行釋放空間。如果 VM 保持 snapshot 狀態數天甚至數週,就會嚴重佔用 datastore 空間。

⚠️ 可能遇到的錯誤訊息

[msg.hbacommon.outofspace] There is no more space for virtual disk 'dns-000002.vmdk'.

此訊息表示 snapshot 已成長至佔滿儲存空間,導致 VM 無法寫入資料、凍結甚至異常關機。

如何安全清除 Snapshot?

步驟 1:查看現有快照

  • 登入 vSphere Client
  • 點選虛擬機 → Snapshots → 查看樹狀快照列表

步驟 2:刪除快照

  • 刪除單一快照:選取後點擊 Delete
  • 刪除全部快照:選擇 Delete All(建議使用)

刪除後,VM 的資料會合併回主磁碟,delta 檔案會自動消失。

步驟 3:若有 Consolidation 錯誤

  • 執行:Actions → Snapshot → Consolidate

步驟 4:確認空間已釋放

在 ESXi Shell 查看磁碟佔用:

du -sh /vmfs/volumes/datastore1/Your-VM-Name/

最佳實務與自動化建議

1.快照保留不超過 72 小時
2.勿將快照當成備份工具
3.定期檢查與清理 Snapshot

避免未來再次發生提醒:

問題原因建議
快照合併失敗空間不足預留至少 20% Datastore 空間
快照殘留 .vmsn/.vmdk合併失敗或手動中斷勿強制刪除,需關機確認後再清除
Consolidate 需手動處理多層 Snapshot 或重複備份系統干擾建議使用正式備份工具如 Veeam

延伸閱讀

9 Views