理解Rhat 7中需要扩展的LVM配置的问题

理解Rhat 7中需要扩展的LVM配置的问题

我继承了一台空间不足的服务器,在采取行动之前需要一些帮助来了解它的配置。

我需要在不重新启动服务器的情况下扩展逻辑卷。
LVS 显示名为 RHEL 的卷,大小为 295.62g。 LSBLK显示我实际上有两个大小为295.6的分区,所以我认为它处于镜像模式,但LVS没有反映这一点。那么这个设置如何呢? rhel 是否有效地使用了两个分区?我如何验证这一点?

另外,我看到一个没有分区的 sdb 磁盘,因此我的计划是在那里创建一个分区并将其添加到 LVM,但首先我想了解 /sda2/rhel-root 和 sda3/rhel-root 是如何工作的。 ..在同一个磁盘上进行镜像根本没有意义!肯定不可能是这样。

# lvs 
  LV   VG   Attr       LSize    Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root rhel -wi-ao---- <295,62g                                                    
  swap rhel -wi-ao----   <3,38g                                                    
# lsblk
NAME          MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda             8:0    0   400G  0 disk 
├─sda1          8:1    0     1G  0 part /boot
├─sda2          8:2    0    39G  0 part 
│ ├─rhel-root 253:0    0 295,6G  0 lvm  /
│ └─rhel-swap 253:1    0   3,4G  0 lvm  [SWAP]
└─sda3          8:3    0   360G  0 part 
  └─rhel-root 253:0    0 295,6G  0 lvm  /
sdb             8:16   0   200G  0 disk 
# vgdisplay -v rhel
  --- Volume group ---
  VG Name               rhel
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  10
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               298,99 GiB
  PE Size               4,00 MiB
  Total PE              76542
  Alloc PE / Size       76542 / 298,99 GiB
  Free  PE / Size       0 / 0   
  VG UUID               mDkink-qzyl-2KyS-DG5T-tf55-4it5-eGNqx3
   
  --- Logical volume ---
  LV Path                /dev/rhel/root
  LV Name                root
  VG Name                rhel
  LV UUID                U4AI2b-eadM-TczV-g4ff-gudE-JWiU-dbz5sT
  LV Write Access        read/write
  LV Creation host, time sms-linux-image.novalocal, 2021-07-01 17:16:09 -0400
  LV Status              available
  # open                 1
  LV Size                <295,62 GiB
  Current LE             75678
  Segments               3
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0
   
  --- Logical volume ---
  LV Path                /dev/rhel/swap
  LV Name                swap
  VG Name                rhel
  LV UUID                jSxEFM-frWb-MtJw-ae1g-Omfv-VNHD-SzbGt5
  LV Write Access        read/write
  LV Creation host, time sms-linux-image.novalocal, 2021-07-01 17:16:09 -0400
  LV Status              available
  # open                 2
  LV Size                <3,38 GiB
  Current LE             864
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:1
   
  --- Physical volumes ---
  PV Name               /dev/sda2     
  PV UUID               vscfjc-VcNp-Kwdv-JjuB-gtbP-2SsB-6iq6td
  PV Status             allocatable
  Total PE / Free PE    9983 / 0
   
  PV Name               /dev/sda3     
  PV UUID               yLqH6J-EQc9-FZBS-2MTr-Tams-7Mhn-hSSXAM
  PV Status             allocatable
  Total PE / Free PE    66559 / 0

答案1

这只是lsblk显示部分位于一个设备上、部分位于另一设备上的文件系统的一种怪癖。

根文件系统的总大小295,6G与显示的完全相同。现在,由于它在 LVM 上,因此文件系统的一部分在 LVM PV 内sda2,另一部分在sda3……但由于lsblk目前没有对 LVM 进行深入分析,因此它不知道它的每个部分有多大。因为SIZE列被理解为表示设备,它显示设备的大小/dev/mapper/rhel-root,即使该设备未完全包含在一个物理分区中,因此lsblk必须列出该设备两次。

您可能希望运行lsblk -s 以以文件系统为中心的方式而不是默认的以设备为中心的方式显示列表,并查看它是否可以帮助您可视化正在发生的情况。

话虽如此,看起来sda3分区大小为 360G,而整个rhelVG 只有298,99G.这可能是由于之前对 的分区大小调整操作不完整造成的sda

尝试这个:

partprobe /dev/sda   # to ensure the kernel has up-to-date view of the partition table
pvresize /dev/sda3   # to extend the LVM PV at sda3 to fill the entire partition if it's currently smaller
vgs                  # to see if the rhel VG now has free space available

如果这使得一些空间可用(=输出VFreevgs不为 0),则您可以通过根据需要扩展 LV 来使用该容量。例如,将rhelVG 的所有可用容量放入根文件系统:

lvextend --resizefs -l +100%FREE /dev/mapper/rhel-root

答案2

LSBLK 显示我实际上有两个大小为 295.6 的分区...

实际上并非如此:

├─sda2          8:2    0    39G  0 part 
...
└─sda3          8:3    0   360G  0 part 

显示的sda2是39G,显示sda3的是360G。这反映在来自 的信息中vgdisplay,其中显示:

  --- Physical volumes ---
  PV Name               /dev/sda2     
  PV UUID               vscfjc-VcNp-Kwdv-JjuB-gtbP-2SsB-6iq6td
  PV Status             allocatable
  Total PE / Free PE    9983 / 0
   
  PV Name               /dev/sda3     
  PV UUID               yLqH6J-EQc9-FZBS-2MTr-Tams-7Mhn-hSSXAM
  PV Status             allocatable
  Total PE / Free PE    66559 / 0

看着那(这Total PE / Free PEPE代表“物理范围”。一个盘区通常为 4MB,因此Total PE大致对应于我们在 中看到的分区大小lsblk

那么这个设置如何呢? rhel 是否有效地使用了两个分区?我如何验证这一点?

您可以rhel从输出中验证是否正在使用两个分区 vgdisplay,这表明两个分区都是rhel卷组的成员(并且两个分区都已完全分配)。

另外,我看到一个没有分区的 sdb 磁盘,因此我的计划是在那里创建一个分区并将其添加到 LVM,但首先我想了解 /sda2/rhel-root 和 sda3/rhel-root 是如何工作的。 ..在同一个磁盘上进行镜像根本没有意义!肯定不可能是这样。

它们不是镜像的(考虑到大小的差异,也不可能镜像)。它们只是 VG 消耗的两块空间。

您不需要在 上创建任何分区sdb。您最好将整个磁盘添加到 VG:

# pvcreate /dev/sdb
# vgextend rhel /dev/sdb

相关内容