IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    PVE LVM 扩容

    泠泫凝发表于 2024-12-25 14:03:49
    love 0

    PVE 中 LVM 卷的扩容全过程以及相关解释。

    环境介绍

    目前服务器具备4块硬盘:2×1TB + 2×4TB,计划取出一块做系统盘(及ISO镜像、CT卷等),余下三块硬盘做LVM用于VM磁盘存储。硬件上不具备RAID卡,PVE版本为Linux 6.8.4-2-pve。

    准备硬盘

    目前服务器上所有硬盘均有数据,但数据不再需要将清零处理;其中1块1TB硬盘(/dev/sdb)已安装好系统,分区拓扑参考下表:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    root@dell_t30:~# lsblk
    NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
    sda 8:0 0 3.6T 0 disk
    sdb 8:16 0 931.5G 0 disk
    ├─sdb1 8:17 0 1007K 0 part
    ├─sdb2 8:18 0 1G 0 part /boot/efi
    └─sdb3 8:19 0 930.5G 0 part
    ├─pve-swap 252:0 0 8G 0 lvm [SWAP]
    ├─pve-root 252:1 0 96G 0 lvm /
    ├─pve-data_tmeta 252:2 0 8.1G 0 lvm
    │ └─pve-data 252:4 0 794.3G 0 lvm
    └─pve-data_tdata 252:3 0 794.3G 0 lvm
    └─pve-data 252:4 0 794.3G 0 lvm
    sdc 8:32 0 931.5G 0 disk
    sdd 8:48 0 3.6T 0 disk

    可见其中pve-root分区仅被分到96GB,余下空间均分配给pve-data。

    下面来准备磁盘,其中sda、sdc、sdd三块硬盘需要组LVM,那么先对这三块盘进行准备,主要就是初始化分区表和建立空分区。新建立的分区不必格式化。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    root@dell_t30:~# fdisk /dev/sda

    Welcome to fdisk (util-linux 2.38.1).
    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.


    Command (m for help): g
    Created a new GPT disklabel (GUID: 89644091-xxxx-xxxx-xxxx-F1651C2CDBBA).

    Command (m for help): n
    Partition number (1-128, default 1):
    First sector (2048-7814037134, default 2048):
    Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-7814037134, default 7814035455):

    Created a new partition 1 of type 'Linux filesystem' and of size 3.6 TiB.

    Command (m for help): w
    The partition table has been altered.
    Calling ioctl() to re-read partition table.
    Syncing disks.

    对余下两块盘做同样操作,这里不再赘述。

    创建LVM及扩容

    1. 首先创建物理卷(PV):
      1
      2
      root@dell_t30:~# pvcreate /dev/sda1
      Physical volume "/dev/sda1" successfully created.
    2. 创建卷组(VG):
      1
      2
      root@dell_t30:~# vgcreate datastore0 /dev/sda1
      Volume group "datastore0" successfully created
      其中datastore0是我这里对VG的命名,可以随意修改;/dev/sda1是刚才创建好PV的磁盘
    3. 看一下VG状态及信息,确认卷组创建成功以及状态正常(vgdisplay)
      1
      2
      3
      4
      root@dell_t30:~# vgs
      VG #PV #LV #SN Attr VSize VFree
      datastore0 1 0 0 wz--n- <3.64t <3.64t
      pve 1 3 0 wz--n- <930.51g 16.00g
    4. 扩容VG,把剩余磁盘都加入该VG
      1
      2
      3
      4
      5
      6
      root@dell_t30:~# vgextend datastore0 /dev/sdc1
      Physical volume "/dev/sdc1" successfully created.
      Volume group "datastore0" successfully extended
      root@dell_t30:~# vgextend datastore0 /dev/sdd1
      Physical volume "/dev/sdd1" successfully created.
      Volume group "datastore0" successfully extended
      看一下当前VG状态,确保所有硬盘都加入了:
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      root@dell_t30:~# vgdisplay
      --- Volume group ---
      VG Name datastore0
      System ID
      Format lvm2
      Metadata Areas 3
      Metadata Sequence No 4
      VG Access read/write
      VG Status resizable
      MAX LV 0
      Cur LV 1
      Open LV 1
      Max PV 0
      Cur PV 3
      Act PV 3
      VG Size <8.19 TiB
      PE Size 4.00 MiB
      Total PE 2146188
      Alloc PE / Size 38400 / 150.00 GiB
      Free PE / Size 2107788 / 8.04 TiB
    5. 将新建LVM加入到PVE
      Web首页左侧点数据中心,中间点存储,添加,LVM,ID随便写,卷组选刚才创建的,启用勾选,内容按实际需求选择,添加即可。

    系统卷扩容

    我这里直接在Web里面把自动创建的LVM-Thin销毁掉,然后执行如下命令扩容pve-root:

    1
    2
    3
    4
    5
    6
    7
    root@dell_t30:~# lvextend -rl +100%FREE /dev/mapper/pve-root
    Size of logical volume pve/root changed from 96.00 GiB (24576 extents) to <922.51 GiB (236162 extents).
    Logical volume pve/root successfully resized.
    resize2fs 1.47.0 (5-Feb-2023)
    Filesystem at /dev/mapper/pve-root is mounted on /; on-line resizing required
    old_desc_blocks = 12, new_desc_blocks = 116
    The filesystem on /dev/mapper/pve-root is now 241829888 (4k) blocks long.

    我这里resize2fs是自动的,如果没有自动执行可以手动执行一下。



沪ICP备19023445号-2号
友情链接