> 虚拟化 Virtualization > Proxmox >

PVE 主机系统 LVM 默认配置说明

大多数人直接在本地磁盘上安装 Proxmox VE。 Proxmox VE 安装 CD 提供了多种本地磁盘管理选项,以及当前的默认设置使用 LVM。 安装程序让您选择一个用于此类设置的单个磁盘,并将该磁盘用作物理卷的 Volume Group(VG) PVE 。 以下输出来自使用 8GB 小磁盘测试安装:

# pvs
  PV         VG   Fmt  Attr PSize PFree
  /dev/sda3  pve  lvm2 a--  7.87g 876.00m

# vgs
  VG   #PV #LV #SN Attr   VSize VFree
  pve    1   3   0 wz--n- 7.87g 876.00m

安装程序会在上述 VG 内分配3个 Logical Volumes(LV):

# lvs
  LV   VG   Attr       LSize   Pool Origin Data%  Meta%
  data pve  twi-a-tz--   4.38g             0.00   0.63
  root pve  -wi-ao----   1.75g
  swap pve  -wi-ao---- 896.00m
  • root

根分区格式为 ext4 ,包含操作系统。

  • swap

交换分区。

  • data

此卷使用 LVM-thin,用于存储 VM 镜像。 LVM-thin 更适合这项任务,因为它提供了对快照和克隆的有效支持。

对于 4.1+ 的 Proxmox VE 版本,安装程序会创建一个标准的逻辑名为“data”的卷,挂载在 /var/lib/vz 。

从 4.2 版本开始,逻辑卷“data”是一个 LVM-thin 池, 用于存储基于块的Guest镜像,而 /var/lib/vz 只是一个根文件系统上的目录。

硬件说明

我们强烈建议使用硬件 RAID 控制器(带 BBU) 这样的设置。 这提高了性能,提供了冗余,并使 磁盘更换更容易(可热插拔)。

LVM 本身不需要任何特殊的硬件和内存要求非常低。

引导加载程序

我们默认安装两个引导加载程序。 第一个分区包含标准的 GRUB 引导加载程序。 所述第二分区是 EFI System Partition(ESP),这使得它能够引导 EFI 系统。

创建一个 Volume Group

假设我们有一个空磁盘 /dev/sdb ,我们想要创建一个名为“vmdata”的卷组。

请注意,以下命令将销毁所有 /dev/sdb 上的现有数据。

  • 创建一个分区
# sgdisk -N 1 /dev/sdb
  • 创建一个物理卷,不需要确认,元数据大小为250k
# pvcreate --metadatasize 250k -y -ff /dev/sdb1
  • 在/dev/sdb1上创建一个名称为“vmdata”的卷组
# vgcreate vmdata /dev/sdb1

为 /var/lib/vz 创建一个额外的 LV

这可以通过创建一个新的 Thin LV 轻松完成。

# lvcreate -n <Name> -V <Size[M,G,T]> <VG>/<LVThin_pool>

一个例子:

# lvcreate -n vz -V 10G pve/data

现在必须在 LV 上创建一个文件系统。

# mkfs.ext4 /dev/pve/vz 

最后必须挂载它。

确保 /var/lib/vz 为空。 默认安装情况下不为空。

要使其始终可访问,请在 /etc/fstab 中添加以下行。

# echo '/dev/pve/vz /var/lib/vz ext4 defaults 0 2' >> /etc/fstab 

调整精简池的大小

调整 LV 和元数据池的大小可以通过以下命令方式实现。

# lvresize --size +<size[\M,G,T]> --poolmetadatasize +<size[\M,G]> <VG>/<LVThin_pool>

扩容数据池时,元数据池也必须扩容。

创建一个 LVM 精简池

必须在卷组之上创建精简池。 如何创建卷组请参见 LVM 部分。

# lvcreate -L 80G -T -n vmstore vmdata


(责任编辑:IT)