Proxmox VE 9.2.2 初始配置与存储规划

Proxmox VE 9.2.2 初始配置与存储规划

本文记录一台自用 Proxmox VE 主机的初始配置过程,重点说明本地存储类型、磁盘规划以及显卡直通前的 BIOS 准备。

1. 硬件与目标

本机配置如下:

项目配置
虚拟化平台Proxmox VE 9.2.2
处理器AMD 8 核 16 线程
内存32 GB
系统盘128 GB SSD
数据盘1 TB 机械硬盘
宿主机显示卡NVIDIA GeForce GT 730
计算显卡2 × RTX 2080 Ti 22 GB
启动方式UEFI + GRUB

最终目标:

  • 128 GB SSD 安装 Proxmox VE;
  • 1 TB 机械硬盘存放虚拟机磁盘;
  • GT 730 留给 PVE 宿主机;
  • 两张 RTX 2080 Ti 直通给 Ubuntu 虚拟机;
  • Ubuntu 虚拟机运行 CUDA、Docker 和 vLLM。

2. PVE 中常见存储类型

Proxmox VE 本地常见的三类存储是:

  • Directory
  • LVM
  • LVM-Thin

2.1 Directory

Directory 本质上是一个普通 Linux 文件系统目录,底层通常使用 ext4 或 XFS。

常见路径:

/var/lib/vz /mnt/pve/backup

适合保存:

  • ISO 镜像
  • 虚拟机备份
  • LXC 模板
  • Snippets
  • qcow2 或 raw 虚拟磁盘文件

优点:

  • 文件直观可见;
  • 容易复制、归档和备份;
  • 可以同时存放多种内容。

缺点:

  • 如果虚拟磁盘使用 qcow2,会有一层文件格式开销;
  • 文件系统损坏可能影响目录中的多个文件。

2.2 LVM

普通 LVM 会把每块虚拟磁盘创建为独立逻辑卷。

例如:

/dev/vg-name/vm-100-disk-0

特点:

  • 虚拟磁盘是块设备,不是普通文件;
  • 通常按标称容量直接划分空间;
  • 适合传统块存储场景;
  • 快照和精简分配能力不如 LVM-Thin。

对于普通单节点 PVE,新建虚拟机存储时通常不优先选择普通 LVM。

2.3 LVM-Thin

LVM-Thin 在卷组中创建 Thin Pool,再从池中创建精简逻辑卷。

特点:

  • 虚拟磁盘按实际写入量占用空间;
  • 支持高效快照;
  • 支持链接克隆;
  • 非常适合虚拟机和 LXC。

例如,创建一块 500 GB 虚拟磁盘,并不会立即消耗 500 GB 物理空间。只有实际写入的数据才会占用 Thin Pool。

需要注意:

  • Thin Pool 可以超额分配;
  • 必须监控实际空间使用率;
  • Thin Pool 真正写满后,虚拟机可能出现 I/O 错误甚至文件系统损坏。

3. 默认的locallocal-lvm

PVE 使用 LVM 方式安装后,通常会看到:

local local-lvm

它们可能来自同一块系统盘,不代表存在两块物理硬盘。

3.1local

通常是 Directory 类型:

/var/lib/vz

主要保存:

  • ISO
  • 备份
  • LXC 模板
  • Snippets

3.2local-lvm

通常是 LVM-Thin 类型:

VG: pve Thin Pool: data

主要保存:

  • 虚拟机磁盘
  • LXC 根磁盘

本机系统盘只有 128 GB,因此不适合长期存放大型虚拟机磁盘。


4. 1 TB 机械硬盘的规划

本机将 1 TB 机械硬盘建立为独立 LVM-Thin,用于存放 Ubuntu 虚拟机磁盘。

在 PVE 管理界面进入:

节点 → 磁盘 → LVM-Thin → 创建 Thin Pool

创建前必须确认目标磁盘没有需要保留的数据。

建议命名示例:

卷组名称:Toshiba-1TB Thin Pool 名称:data 自动添加存储:启用

LVM-Thin 创建本身通常很快,不会对整块磁盘执行逐扇区完整写入。


5. 检查磁盘与 LVM 状态

5.1 查看磁盘结构

lsblk-oNAME,SIZE,TYPE,FSTYPE,MOUNTPOINTS,MODEL

5.2 查看 PV、VG 和 LV

pvs vgs lvs-a-olv_name,vg_name,lv_size,seg_type,data_percent,metadata_percent,devices

5.3 查看 PVE 存储状态

pvesm status

需要确认:

  • 新机械盘已经成为 LVM PV;
  • 已创建独立 VG;
  • 已创建 Thin Pool;
  • PVE 中对应存储状态为active

6. 推荐的最终存储结构

128 GB SSD ├─ Proxmox VE 系统 ├─ local └─ local-lvm 1 TB HDD └─ Toshiba-1TB LVM-Thin └─ Ubuntu 虚拟机磁盘

这种规划的优点:

  • 系统盘与大型虚拟机磁盘分离;
  • 避免 128 GB SSD 被快速占满;
  • 支持虚拟机快照和精简分配;
  • 后续扩容虚拟磁盘较方便。

需要注意,机械硬盘的随机 I/O 性能有限。适合实验环境、模型文件和普通服务,但数据库、大量并发虚拟机或高频写入业务更适合 SSD/NVMe。


7. 显卡直通前的 BIOS 配置

双显卡直通前,主板 BIOS 建议开启:

SVM:Enabled IOMMU:Enabled Above 4G Decoding:Enabled CSM:Disabled

作用说明:

选项作用
SVM启用 AMD 硬件虚拟化
IOMMU启用 PCIe 设备隔离和直通
Above 4G Decoding为多张大显存显卡分配足够的 MMIO 地址空间
CSM关闭传统兼容启动,统一使用 UEFI

本次实际遇到的问题是:两张 2080 Ti 加入虚拟机后,虚拟机黑屏。最终通过开启Above 4G Decoding并关闭CSM解决。


8. 初始配置建议

对于 32 GB 内存的 PVE 主机:

Ubuntu 虚拟机:约 20~24 GB PVE 宿主机保留:约 8~12 GB

建议:

  • 初期关闭 Ballooning;
  • 安装 QEMU Guest Agent;
  • 不要让宿主机系统盘承担大量模型和虚拟机数据;
  • 定期监控 LVM-Thin 的数据和元数据占用率。

9. 总结

本机采用以下方案:

128 GB SSD:PVE 系统 1 TB HDD:LVM-Thin 虚拟机存储 GT 730:PVE 宿主机显示 双 RTX 2080 Ti:直通 Ubuntu 虚拟机

该方案适合自用虚拟化、双卡 CUDA 和本地大模型推理环境。