開始前先了解
本篇操作對象是 虛擬機, 不是更換實體伺服器的處理器或記憶體. 請先確認你有管理該虛擬機的權限, 並安排服務可接受的停機時間.
示範虛擬機為 100 (demo-ubuntu), 原配置為 2 個 vCPU 與 4096 MiB 記憶體. 請以自己的負載與實體主機可用資源決定新值, 不必照抄圖中的配置.
先查看節點的資源使用狀況. 將所有虛擬機的記憶體配置加總後仍應保留主機自身與其他服務需要的空間; 核心數增加也不代表效能必然按比例提高.
本系列使用 Proxmox VE 9 繁體中文介面的真實截圖. 節點, 儲存名稱與示範數值請換成自己的環境; 作業系統安裝程式可能維持其原有語言.
01記錄目前配置, 確認主機還有餘裕
在左側樹狀清單選擇目標虛擬機, 開啟 硬體. 記錄 處理器 與 記憶體 的目前數值, 再到節點的 概觀 檢查 CPU 與記憶體使用率.
CPU 的插槽數乘以每個插槽的核心數, 才是配置給虛擬機的 vCPU 數. 一般小型 Linux 虛擬機可維持 1 個插槽, 依需要調整核心數; 不要為增加 vCPU 而任意改變 CPU 類型.
如果主機本身已接近滿載, 請先找出持續吃滿資源的服務, 或規劃增加實體資源. 單純提高虛擬機配置可能使其他虛擬機一起變慢.
放大圖片
02先在客體內儲存工作並正常關機
通知使用者, 儲存尚未完成的工作, 並依服務需求停止應用程式. 再在虛擬機頁面使用 關機, 等待狀態變為已停止.
如果尚未安裝客體代理程式, 也可在 Ubuntu 虛擬機的終端執行以下正常關機指令. 這個指令必須在 Ubuntu 虛擬機內執行, 不要在 Proxmox VE 節點的 Shell 執行.
sudo shutdown -h now
單純在 Ubuntu 內執行重新啟動, 不等同於把虛擬機完全停止再啟動. 本篇採取完全關機後調整, 避免未具備熱插拔條件時只出現待套用設定.
放大圖片
03分別修改核心數與記憶體
在 硬體 中選取 處理器, 按 編輯. 保持原本的插槽數與 CPU 類型, 依規劃調整核心數, 再儲存.
接著選取 記憶體, 按 編輯. 數值單位為 MiB, 例如 4096 MiB 約為 4 GiB, 6144 MiB 約為 6 GiB. 依目標容量填入數字, 並再次核對主機尚可提供的記憶體.
若畫面有 Ballooning 相關選項, 最小值與最大值代表動態記憶體配置範圍. 初次操作先保留既有設計, 不要把未使用的最大值當成主機永遠不會耗用的容量.
放大圖片
04啟動並在 Ubuntu 內驗證
按 啓動, 等待 Ubuntu 完成開機. 先確認 Proxmox VE 硬體頁的新數值, 再登入 Ubuntu 虛擬機內執行:
nproc
free -h
nproc 用來確認目前可使用的處理器數量. free -h 顯示作業系統可使用的記憶體, 因核心保留與單位換算, 可能略少於管理畫面配置的數字.
最後檢查網站, 資料庫或原本使用的服務是否恢復. 若客體內仍顯示舊配置, 核對是否曾完全關機再啟動, 是否有待套用設定, 以及是否選錯虛擬機.
放大圖片
完成後如何確認
虛擬機硬體頁與 Ubuntu 內的資源查詢結果應互相對應, 服務也應能正常啟動. 請保留調整前後的數值, 作為之後判斷資源是否足夠的依據.
常見問題
增加 vCPU 就一定會更快嗎?
不一定. 程式是否能平行運作, 實體 CPU 的負載, 儲存延遲與記憶體是否不足都會影響結果. 調整後仍需觀察實際服務表現.
可以在開機狀態直接調整嗎?
部分配置支援熱插拔, 但需同時符合虛擬機設定與作業系統條件. 本篇採正常關機再修改的方式, 避免把管理畫面的設定值誤認為客體已立即套用.