逻辑卷的扩容

目录

1.把磁盘或者分区加入卷组

pvcreate

vgextend

vgdisplay vg0

2.扩容

物理磁盘扩容

文件系统的扩容

注意

一条命令搞定2个步骤

3.特点


1.把磁盘或者分区加入卷组

查看磁盘,发现已经满了

[root@N1 ~]# echo "66666" > /mnt/data/a.txt
-bash: echo: write error: No space left on device
[root@N1 ~]# df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/vg0-ndata     30G   30G   20K 100% /mnt/data
[root@N1 ~]

pvcreate

创建物理卷

[root@N1 ~]# pvcreate /dev/sda4

vgextend

把新搞的物理卷加入卷组

[root@N1 ~]# vgextend  vg0 /dev/sda4
  Volume group "vg0" successfully extended

vgdisplay vg0

发现加入之后vg0 已经新有可分配的PE了

 

[root@N1 ~]# vgdisplay vg0
  --- Volume group ---
  VG Name               vg0
  System ID             
  Format                lvm2
  Metadata Areas        3
  Metadata Sequence No  3
  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               39.95 GiB
  PE Size               16.00 MiB
  Total PE              2557
  Alloc PE / Size       1918 / <29.97 GiB
  Free  PE / Size       639 / 9.98 GiB
  VG UUID               R1OqyH-O3MN-kVcn-BF1H-Vy75-x9zf-MZM1Vp
[root@N1 ~]# df -h
/dev/mapper/vg0-ndata     30G   30G   20K 100% /mnt/data

2.扩容

这个扩展实际上分为二步,第一步是物理磁盘的扩容。第二步是文件系统的扩容

物理磁盘扩容

[root@N1 ~]# lvextend -L +2G /dev/vg0/ndata
  Size of logical volume vg0/ndata changed from <29.97 GiB (1918 extents) to <31.97 GiB (2046 extents).
  Logical volume vg0/ndata successfully resized.

发现vg0 多了2G

[root@N1 ~]# lvs vg0
  LV    VG  Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  ndata vg0 -wi-ao---- <31.97g                                                    

但是此时用df -h 查看 此时磁盘仍然没有变化的,因为df -h 文件系统容量  

文件系统的扩容

 xfs_growfs

[root@N1 ~]# xfs_growfs /mnt/data
meta-data=/dev/mapper/vg0-ndata  isize=512    agcount=4, agsize=1964032 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=7856128, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=3836, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 7856128 to 8380416

发现文件系统已经变了

[root@N1 ~]# df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/vg0-ndata     32G   30G  2.0G  94% /mnt/data

注意

xfs 文件系统使用的是 xfs_growfs 后面接的是挂载点

ext 文件系统使用的是 resize2fs /dev/vg0/ndata 后面接的设备名称

一条命令搞定2个步骤

lvextend 使用 -r 参数即可

[root@N1 ~]# lvextend -r -L +3G /dev/vg0/ndata
  Size of logical volume vg0/ndata changed from <31.97 GiB (2046 extents) to <34.97 GiB (2238 extents).
  Logical volume vg0/ndata successfully resized.
meta-data=/dev/mapper/vg0-ndata  isize=512    agcount=5, agsize=1964032 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=8380416, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=3836, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 8380416 to 9166848

验证结果

[root@N1 ~]# df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/vg0-ndata     35G   30G  5.0G  86% /mnt/data
[root@N1 ~]# lvs vg0
  LV    VG  Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  ndata vg0 -wi-ao---- <34.97g  

3.特点

在线扩展,不影响用户使用

但是如果缩减的话必须离线。而且我们不建议离线,因为缩减的话不确定缩减的PE取自哪个硬盘/分区。而且缩减只针对ext 系统, xfs 不支持缩减

你可能感兴趣的:(linux,运维,服务器)