在取代 VMware 企業級虛擬化市場中,Proxmox Virtual Environment (PVE) 近年以其強大的開源特性與靈活性著稱,更重要的是授權費每顆 CPU 費用比 VMware 低,甚至有免費的社群版,但只能取得社群版更新。隨著近期 Proxmox VE 9.1.12 的釋出,以及剛登場的 Proxmox Datacenter Manager (PDM) 1.0.1,我們見證了 Proxmox 生態系在「多叢集管理」與「底層架構」上的重大更新。
然而,在這些官方更新的環節中,一直存在一個長期的痛點,PVE 環境其實缺乏一個原生的、動態的資源調度器(DRS, Distributed Resource Scheduler)。這正是開源專案 ProxLB (gyptazy/ProxLB) 近期在社群中備受矚目原因,它並非要取代官方功能,而是完美地補足了「微觀資源管理」的最後一塊拼圖。
ProxLB 是什麼?為什麼我們現在需要它?
簡單來說,ProxLB 就像是 VMware vSphere DRS 的輕量化開源替代方案,專為 Proxmox 設計。
在 Proxmox VE 9.1.2 中,雖然我們已經在 9.1.x 有了對 OCI (Open Container Initiative) 容器映像檔的直接支援,以及更強大的 SDN軟體定義網路監控功能,但 PVE 的核心邏輯依然是被動的。PVE 的 HA(高可用性)功能只會在節點「死掉」時觸發遷移,已經滿足了許多人在資訊環境中的虛擬機平台部署和維運需求,但是呢,它不會因為某個節點 CPU 滿載、而另一個節點閒置時,主動幫你平衡負載。
這就是 ProxLB 進場的時刻。它是一個事件驅動與週期性的負載平衡器,透過 Proxmox API 運作,具備以下核心能力:
智慧負載平衡:基於 CPU、記憶體或磁碟 I/O 使用率,自動將 VM 或 CT(容器)即時遷移到負載較低的節點。
親和性與反親和性群組 (Affinity / Anti-Affinity Groups):這是企業級應用的主要需求。你可以設定「資料庫主從節點」永遠不要跑在同一台實體機上(反親和性),或者設定「Web Server 與 Cache Server」必須跑在同一台機器以減少延遲(親和性)。
靈活的標籤管理:透過簡單的 Proxmox 標籤(Tags)即可控制調度邏輯,無需複雜的設定檔。
在 PDM 1.0.1 多叢集時代的定位
許多人可能會想問:「Proxmox 剛發布的 Datacenter Manager 1.0.1 不就是用來管理的嗎?」
這裡必須釐清一個架構上的分工:
Datacenter Manager 1.0.1 (Macro Management) 的強項在於「宏觀視角」。它將你分布在辦公室內網資料中心裡面、企業內各分點組成 SD-WAN 中,或台北、東京、紐約與歐洲等地的多個 PVE 叢集整合在一個儀表板中,負責跨叢集 (Cross-Cluster) 的遷移、統一更新與全域健康監控, PDM 它解決的是「多地管理」的整合單一平台問題,也就是 PVE 環境中接近 VMware 的 vCenter、vSphere 的產品。
ProxLB (Micro Scheduling) 則是專注於「微觀視角」,它執行在單一叢集內部,確保這個叢集內的 3 台或 10 台節點之間,資源使用是均衡的。
這兩者並不衝突,其實是很好的搭檔。 想像一下,PDM 告訴你「台北叢集整體負載過高」,而 ProxLB 則在台北叢集內部,努力將高負載的 VM 搬移到較閒置的節點上,試圖在內部消化負載壓力。只有當 ProxLB 也無能為力時,管理者才需要透過 PDM 介入進行跨叢集調度。
實戰應用:PVE 9.1 與 ProxLB 的協同效應
在 Proxmox VE 9.1.2 的環境下,ProxLB 的價值更加凸顯。PVE 9.1 引入了更先進的 QEMU 10.1 與 Linux Kernel 6.17,這意味著類似 VMware 引以為傲的 vMotion 功能,在 PVE 中叫做 Live Migration(線上遷移)的效率與相容性更高。
ProxLB 利用這些底層改進,能比較無感地執行再平衡(Rebalance)操作。例如,當你大量部署 PVE 9.1 新支援的 OCI 容器應用時,負載可能會瞬間集中在某幾個節點。ProxLB 可以設定為 service 模式,在背景默默監控,一旦發現某個節點 RAM 使用率超過 80%,就自動將部分非核心業務的容器遷移走,確保核心業務不受影響。
CyberQ 觀點:企業導入建議
如果你正在運維一個超過 3 個節點的 Proxmox 叢集,ProxLB 幾乎是一個「必裝」的工具。
目前的版本已經支援 Docker 部署與 Systemd 服務模式,安裝門檻極低。對於已經升級到 PVE 9.1.2 的用戶,建議先在測試環境中部署 ProxLB,並設定 dry-run(試運行)模式,觀察它的調度邏輯是否符合你的預期,再正式開啟自動遷移。
Proxmox 的生態系正在從「手動管理」走向「自動化治理」,而 PVE 官方推出的 PDM ,則更進一步讓採用 PVE 虛擬化環境的人更貼近虛擬化平台的企業級功能,而 ProxLB 則再將 PVE 往前推進。
至於官方會不會導入類似 DRS 這部分的更新或功能呢 ?
我們從社群的討論和官方給的回應中也可以發現,以這篇討論來說 Automatic Resource Load Balancing (Similar to VMware DRS) in Proxmox VE 這是一個未來有可能會導入的功能,畢竟這是業界許多人的期待。
官方的 staff 回覆中提到目前「rough draft (粗略草案)」有監控 CPU/memory usage / pressure,並在節點間 imbalance 過大時嘗試做 rebalance。Proxmox Support Forum
但同時官方也強調這若要支援「non-HA 資源 (一般 VM) 的動態排程」,將是「不同的 feature request」。
相關資源:
GitHub 專案:gyptazy/ProxLB
官方發布:Proxmox VE 9.1 Release Notes, Proxmox Datacenter Manager 1.0
如果想更深入了解 Proxmox VE 9.1 的新功能以及它如何為這類自動化工具鋪路,可以參考下方這支影片,它詳細介紹了該版本的核心更新:
這支影片介紹了 PVE 9.1 的官方功能(如 OCI 支援與 SDN 改進),但看完其實也能理解 ProxLB 能支援這樣運作底層環境的概念。







