PVE
Proxmox Virtual Environment(PVE)是一个基于 Debian 的开源虚拟化平台,同时支持 QEMU/KVM 虚拟机和 LXC 容器。它通过 Web 管理界面统一管理计算、存储和网络资源,广泛用于家庭实验室和小型企业环境1)2)
核心架构
PVE 由以下几个核心组件构成:
| 组件 | 说明 |
|---|---|
| QEMU/KVM | 全虚拟化,运行各种操作系统(Linux、Windows、BSD 等),每个 VM 有独立内核 |
| LXC | 轻量级容器,共享宿主机内核,资源开销小,适合运行 Linux |
| Web UI | 基于 HTTPS 的管理界面(默认端口 8006),支持集群管理 |
| pveproxy | HTTP 代理层,提供 WebSocket 支持(用于 VNC/SPICE 控制台) |
| Corosync + pmxcfs | 集群通信与配置文件系统(基于文件的多节点配置同步)3) |
配置存储
PVE 的一大特色是基于文件的配置系统。所有 VM/CT 的配置保存在 /etc/pve/qemu-server/ 和 /etc/pve/lxc/ 下,通过 pmxcfs 集群文件系统同步4)
一个典型的 VM 配置文件:
root@xiaomi:~# cat /etc/pve/qemu-server/101.conf name: tinywin-downloader memory: 8192 cores: 2 cpu: host ostype: win11 scsi0: HDD_Storage:101/vm-101-disk-1.qcow2,size=64G net0: e1000=BC:24:11:B4:51:7E,bridge=vmbr0
这意味着备份、迁移、克隆都可以直接操作配置文件,无需依赖数据库。
存储池
PVE 支持多种后端存储类型5)
| 类型 | 说明 | 典型用途 |
|---|---|---|
| 目录(Directory) | 宿主机文件系统上的目录 | 模板、ISO 镜像 |
| LVM | 逻辑卷管理器 | VM 磁盘 |
| LVM-thin | 精简配置的 LVM | 支持快照 |
| ZFS | ZFS 文件系统 | 高可靠性、快照、压缩 |
| NFS | 网络文件系统 | 共享存储、多节点 |
| Ceph | 分布式存储 | 企业级集群 |
网络模型
PVE 使用 Linux Bridge 实现虚拟网络8)
单网口典型配置:
物理网口 eth0 → Linux Bridge vmbr0 → VM 虚拟网卡
桥接模式下的 VM 与宿主机在同一广播域中,可以直接通过局域网 IP 访问。此外也支持 NAT、OVS(Open vSwitch)和 VLAN。
VM 生命周期
PVE 提供完整的命令行管理工具9)
| 操作 | 命令 |
|---|---|
| 查看 VM 列表 | qm list |
| 启动 VM | qm start <VMID> |
| 停止 VM | qm stop <VMID> |
| 关机(ACPI) | qm shutdown <VMID> |
| 克隆 | qm clone <SRC> <DST> –name <NAME> –full |
| 查看状态 | qm status <VMID> |
| 重命名 | qm set <VMID> –name '新名称' |
| 查看日志 | cat /var/log/pve/tasks/index | tail |
快照与备份
快照 记录 VM 在某个时间点的磁盘状态,回滚速度快但占用额外磁盘空间10)支持 live 快照(VM 运行时)
快照命令:
qm snapshot <VMID> <snapshot-name> qm rollback <VMID> <snapshot-name> qm delsnapshot <VMID> <snapshot-name>
备份 由 vzdump 工具完成,支持全量备份和定时任务:
vzdump <VMID> --mode snapshot --compress zstd
可通过 Web UI 的 Backup 面板配置周期备份计划。
容器
LXC 容器比 VM 更轻量——共享宿主机内核,启动几乎瞬间完成11)
pct list # 查看所有容器 pct create <CTID> <template> # 从模板创建 pct enter <CTID> # 进入容器 shell pct stop <CTID> # 停止容器
PVE 与 Windows VM
PVE 上运行 Windows VM 有几点注意事项12)13)
- virtio 驱动:安装 Windows 时需要加载 virtio ISO(磁盘控制器 + 网卡驱动),否则安装程序无法识别磁盘
- QEMU Guest Agent:安装后能让 PVE 宿主机获取 Windows 内部信息(IP、主机名)并执行关机命令
- CPU 类型:建议设为
host,让 VM 使用宿主机 CPU 的全部指令集(包括 AVX、AVX2) - 内存气球(ballooning):Windows 对内存气球支持不佳,建议关闭
日常管理
除了 Web UI,PVE 提供多套 CLI 工具:
| 工具 | 用途 |
|---|---|
qm | QEMU/KVM 虚拟机管理 |
pct | LXC 容器管理 |
pvesm | 存储管理(查看池状态、磁盘分配) |
pvecm | 集群管理(节点添加/移除) |
pveversion | 查看 PVE 版本信息 |
pvesh | REST API shell |
适用场景
- 家庭实验室:跑软路由(OpenWrt)、NAS、开发环境
- 小企业:整合多台物理服务器到一台宿主机,降低硬件成本
- 开发测试:快速克隆/销毁测试环境
- Windows 虚拟机:在 Linux 宿主机上运行 Windows 应用
PVE 的优势在于开源免费(不像 VMware vSphere 需要付费许可)、社区活跃、文档完善,如果你已经在用 Proxmox,值得深入了解 CLI 工具以提升日常管理效率。