SPICE là gì & so với noVNC
SPICE (Simple Protocol for Independent Computing Environments) là giao thức remote desktop cho máy ảo. Khác với noVNC (mở ngay trong trình duyệt, tiện nhưng hạn chế), SPICE cho trải nghiệm gần desktop thật: clipboard 2 chiều, nhiều màn hình, chuyển tiếp USB, âm thanh. Đổi lại phải cài client virt-viewer trên máy quản trị và guest agent trong VM.
virt-viewer"] -->|"file .vv (SPICE proxy)"| PVE["Proxmox VE
node"] PVE --> VM["VM (Display: SPICE/QXL)
+ SPICE guest agent"] VM -.clipboard / USB / audio.-> Admin style Admin fill:#ede9fe,stroke:#7c3aed,stroke-width:2px style VM fill:#fae8ff,stroke:#c026d3,stroke-width:2px
| Tính năng | noVNC | SPICE |
|---|---|---|
| Không cần cài client | ✔ (trình duyệt) | ✗ (cần virt-viewer) |
| Clipboard 2 chiều | Hạn chế | ✔ |
| Multi-monitor | ✗ | ✔ |
| USB redirect | ✗ | ✔ |
| Audio | ✗ | ✔ |
Đổi Display của VM sang SPICE
~1 phút — trên Web GUI
-
1
Sửa Display
Chọn VM → Hardware → Display → Edit → chọn SPICE (qxl) → OK. Nên chọn Memory 32MB+ để hỗ trợ multi-monitor.
-
2
Reboot VM để áp dụng
Đổi display cần shutdown/start lại VM (không phải reboot mềm).
Tùy chọn CLI
Cài SPICE guest agent trong VM
~3 phút — để có clipboard & auto-resolution
Windows
Cài spice-guest-tools (spice-space.org). Nếu đã cài virtio-win-guest-tools thì thường đã kèm spice agent.
Linux
Không có guest agent?
SPICE vẫn kết nối được, nhưng mất clipboard 2 chiều và không tự chỉnh độ phân giải theo cửa sổ. Luôn cài agent để dùng đủ tính năng.
Cài virt-viewer trên máy quản trị
~3 phút — client mở file .vv của SPICE
| Hệ điều hành máy admin | Cách cài virt-viewer |
|---|---|
| Windows | Tải bộ cài virt-viewer (.msi) từ virt-manager.org → cài như app thường |
| Linux (Debian/Ubuntu) | apt install virt-viewer |
| Linux (RHEL/Rocky) | dnf install virt-viewer |
| macOS | Cài RemoteViewer (qua Homebrew hoặc bản build sẵn) |
Liên kết file .vv với virt-viewer
Sau khi cài, file .vv tải từ Proxmox nên tự mở bằng virt-viewer. Nếu chưa, chuột phải file → Open with → chọn Remote Viewer.
Kết nối SPICE tới VM
~1 phút
-
1
Mở console SPICE từ GUI
Chọn VM (đang chạy) → nút Console ▾ (mũi tên cạnh Console) → chọn SPICE. Trình duyệt tải file
.vv. -
2
Mở file .vv
Nhấp đúp file vừa tải → virt-viewer mở cửa sổ desktop của VM. Xong!
Đã kết nối
Giờ bạn có clipboard 2 chiều, kéo thả độ phân giải theo cửa sổ. Xem tiếp phần USB redirect & multi-monitor bên dưới.
Tính năng nâng cao
USB Redirection
VM → Hardware → Add → USB Device → chọn SPICE Port. Trong virt-viewer: menu File → USB device selection để đẩy USB từ máy admin vào VM (USB token, ổ cứng...).
Multi-monitor
Tăng Display memory (≥ 32MB). Trong virt-viewer: menu View → Displays để bật thêm màn hình.
Audio
VM → Hardware → Add → Audio Device → backend SPICE → chọn ich9-intel-hda. Reboot VM để có tiếng.
Folder sharing
virt-viewer hỗ trợ WebDAV folder sharing khi VM có spice-webdavd. Tiện chép file nhanh không cần mạng.
Troubleshooting
| Triệu chứng | Nguyên nhân & xử lý |
|---|---|
| File .vv không mở | Chưa cài virt-viewer, hoặc chưa liên kết .vv → cài client & Open with Remote Viewer |
| Clipboard không hoạt động | Thiếu guest agent → cài spice-guest-tools (Win) / spice-vdagent (Linux) |
| Không có menu SPICE ở Console | Display của VM chưa phải SPICE/QXL → đổi ở Hardware rồi start lại VM |
| Màn hình không auto-resize | Guest agent chưa chạy → kiểm tra service spice-vdagent / QXL driver |
| Kết nối SPICE bị chặn | Firewall chặn cổng SPICE proxy (3128) tới node → mở port hoặc dùng cùng LAN |