運行並驗證
將自架 VM 控制台作為 KVM 主機的特權元件進行操作。僅容器運作狀況是不夠的:驗證從瀏覽器到 API、libvirt 到來賓的路徑。
啟動檢查
docker compose -f docker-compose.self-hosted.yml ps
docker compose -f docker-compose.self-hosted.yml logs --tail=200 backend frontend
virsh -c qemu:///system list --all然後確認 UI 載入並且後端模式回應報告自託管模式。檢查其功能圖,而不是假設存在託管功能。
端對端冒煙測試
使用一次性的、經過許可的測試 ISO:
1.上傳ISO並驗證其顯示的大小和名稱; 2. 建立一個具有明確 CPU、記憶體、磁碟和網路選擇的小型 VM; 3.啟動它並打開VNC控制台; 4. 確認啟動進度可見且鍵盤輸入到達訪客; 5.停止虛擬機器; 6. 刪除它並確認其網域、覆蓋層和臨時 NVRAM 已清除; 7. 重新啟動後端並確認過時的替換啟動沒有被阻止。
請勿將成功啟動解釋為硬體認證、應用程式正確性、修補程式合規性或安裝程式已完成的證明。
操作訊號
至少監控:
- 前端和 API 可達性;
- 後端 libvirt 連線;
- 釋放主機記憶體和磁碟空間;
- 上傳失敗和訪客啟動錯誤;
- 來賓網域、覆蓋、NVRAM 和網路清單;
TEST_STORAGE_DIR下的持久清理日誌;- 容器重啟循環和後端異常。
評估 Compose 檔案不配置外部警報系統。
常見故障
| 症狀 | 檢查 |
|---|---|
/dev/kvm 權限被拒絕 | 主機組成員資格和設備映射;不要使設備全域可寫入 |
| 無法連接到 libvirt | 守護程序狀態、套接字路徑、KVM_URI 和容器掛載 |
| 上傳被拒絕 | 檔案類型、可用空間、映像目錄權限和配置的大小限制 |
| 訪客無法開源圖片 | 主機/容器絕對路徑身分和讀取權限 |
| VNC 斷開連線 | 來賓狀態、libvirt 圖形端點、代理路徑與瀏覽器控制台診斷 |
| 替代產品的推出仍受阻持久清理日誌、過時域/覆蓋/NVRAM 資源和後端日誌 |
關機
在停止堆疊之前,停止或刪除 UI 中的一次性訪客。然後運行:
docker compose -f docker-compose.self-hosted.yml down隨後清點 libvirt 網域、映像、網路和命名磁碟區。停止容器不會自動刪除主機擁有的所有資源。