Centos中动态扩容lvm逻辑卷的大小

LVM概念:
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。通过LVM系统管理员可以轻松管理磁盘分区,如:将若干个磁盘分区连接为一个整块的卷组(volume group),形成一个存储池。管理员可以在卷组上随意创建逻辑卷组(logical volumes),并进一步在逻辑卷组上创建文件系统。管理员通过LVM可以方便的调整存储卷组的大小,并且可以对磁盘存储按照组的方式进行命名、管理和分配。当系统添加了新的磁盘,通过LVM管理员就不必将磁盘的文件移动到新的磁盘上以充分利用新的存储空间,而是直接扩展文件系统跨越磁盘即可。它的结构如下图所示:

几个概念解释
----------------------------------------------------------------------------------------------------------------------------------------------------------------
PV(physical volume):物理卷在逻辑卷管理系统最底层,可为整个物理硬盘或实际物理硬盘上的分区。它只是在物理分区中划出了一个特殊的区域,用于记载与LVM相关的管理参数。
VG(volume group):卷组建立在物理卷上,一卷组中至少要包括一物理卷,卷组建立后可动态的添加卷到卷组中,一个逻辑卷管理系统工程中可有多个卷组。
LV(logical volume):逻辑卷建立在卷组基础上,卷组中未分配空间可用于建立新的逻辑卷,逻辑卷建立后可以动态扩展和缩小空间。
PE(physical extent):物理区域是物理卷中可用于分配的最小存储单元,物理区域大小在建立卷组时指定,一旦确定不能更改,同一卷组所有物理卷的物理区域大小需一致,新的pv加入到vg后,pe的大小自动更改为vg中定义的pe大小。
LE(logical extent):逻辑区域是逻辑卷中可用于分配的最小存储单元,逻辑区域的大小取决于逻辑卷所在卷组中的物理区域的大小。由于受内核限制的原因,一个逻辑卷(Logic Volume)最多只能包含65536个PE(Physical Extent),所以一个PE的大小就决定了逻辑卷的最大容量,4 MB(默认) 的PE决定了单个逻辑卷最大容量为 256 GB,若希望使用大于256G的逻辑卷,则创建卷组时需要指定更大的PE。在Red Hat Enterprise Linux AS 4中PE大小范围为8 KB 到 16GB,并且必须总是 2 的倍数。

接下来,举出几个实例说明一下:
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1.准备物理分区(Physical Partions)
首先,我们需要选择用于 LVM 的物理存储器。这些通常是标准分区,但也可以是已创建的 Linux Software RAID 卷。这里我利用fdisk命令,将sdb、sdc两块磁盘分了两个区sdb1、sdc1, 通过fdisk的t指令指定分区为8e类型(Linux LVM) ,如下图:

2.创建物理卷PV(Physical Volumes)
[[email protected] oracle]#pvcreate /dev/sdb1
Physical volume "/dev/sdb1" successfully created
[[email protected] oracle]# pvcreate /dev/sdc1
Physical volume "/dev/sdc1" successfully created

3.创建卷组VG(Volume Groups),命名为vg_test
[[email protected] ~]#vgcreate vg_test /dev/sdb1
Volume group "vg_test" successfully created
使用卷组查看命令vgdisplay显示卷组情况:
[[email protected] oracle]# vgdisplay
--- Volume group ---
VG Name vg_test
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 6
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 1
Act PV 1
VG Size 19.99 GB
PE Size 4.00 MB
Total PE 5118
Alloc PE / Size 2560 / 10.00 GB
Free PE / Size 2558 / 9.99 GB
VG UUID YEYtOr-JpCK-P7MV-FFVo-BgEi-Ooef-IG3hlc

4.创建逻辑卷LV(Logical Volumes) ,命名为test_lv
创建逻辑卷的命令为lvcreate,-l 参数为定PE数来设定逻辑分区大小,也可以使用-L参数直接指定逻辑分区大小,-n参数指定逻辑分区名称。
[[email protected] oracle]# lvcreate -l 2000 -n lv_test vg_test
Logical volume "lv_test" created
也可以使用-L参数
[[email protected] oracle]# lvcreate -L 10G -n lv_test vg_test
Rounding up size to full physical extent 19.99 GB
Logical volume "lv_test" created
使用lvdisplay命令查看逻辑卷情况:
[[email protected] oracle]#lvdisplay
--- Logical volume ---
LV Name /dev/vg_test/lv_test
VG Name vg_test
LV UUID kgUoMy-W1qG-7tAQ-dI5j-Z2KO-a8Td-mXAFbc
LV Write Access read/write
LV Status available
# open 0
LV Size 19.99 GB
Current LE 5118
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:2

5.创建文件系统,并挂载
在逻辑卷上创建ext3文件系统:
[[email protected] oracle]#mkfs -t ext3 /dev/vg_test/lv_test
[[email protected] oracle]#mount /dev/vg_test/lv_test /opt/oracle/
[[email protected] oracle]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
16G 4.7G 11G 32% /
/dev/sda1 99M 27M 67M 29% /boot
tmpfs 872M 0 872M 0% /dev/shm
/dev/mapper/vg_test-lv_test
9.9G 151M 9.2G 2% /opt/oracle

LVM的最大好处就是可以动态地调整分区大小,而无须重新启动机器,下面让我们来体验一下吧!
继续上面的实例,现假设逻辑卷/dev/vg_test/lv_test空间不足,需要增加其大小,我们分两种情况讨论:
---------------------------------------------------------------------------------------------------------
1.卷组中有剩余的空间
通过vgdisplay命令可以检查当前卷组空间使用情况:

[[email protected] oracle]# vgdisplay
--- Volume group ---
VG Name vg_test
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 6
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 1
Act PV 1
VG Size 19.99 GB
PE Size 4.00 MB
Total PE 5118
Alloc PE / Size 2560 / 10.00 GB
Free PE / Size 2558 / 9.99 GB
VG UUID YEYtOr-JpCK-P7MV-FFVo-BgEi-Ooef-IG3hlc
确定当前卷组剩余空间9.99GB,剩余PE数量为2558个。在这里将所有的剩余空间全部增加给逻辑卷 /dev/vg_test/lv_test。
[[email protected] oracle]# lvextend -l +2558 /dev/vg_test/lv_test
Extending logical volume lv_test to 19.99 GB
Logical volume lv_test successfully resized
也可以通过-L直接指定大小,通过 +/- 来 增加/减小 空间。
修改逻辑卷大小后,通过resize2fs来修改文件系统的大小。
[[email protected] oracle]#resize2fs /dev/vg_test/lv_test
resize2fs 1.39 (29-May-2006)
Filesystem at /dev/vg_test/lv_test is mounted on /opt/oracle; on-line resizing required
Performing an on-line resize of /dev/vg_test/lv_test to 5240832 (4k) blocks.
The filesystem on /dev/vg_test/lv_test is now 5240832 blocks long.
再次查看文件系统的大小:
[[email protected] oracle]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
16G 4.7G 11G 32% /
/dev/sda1 99M 27M 67M 29% /boot
tmpfs 872M 0 872M 0% /dev/shm
/dev/mapper/vg_test-lv_test
20G 156M 19G 1% /opt/oracle

2.卷组中空间不足
  当卷组中没有足够的空间用于扩展逻辑卷的大小时,就需要增加卷组的容量,而增加卷组容量的惟一办法就是向卷组中添加新的物理卷。
  首先需要对新增加的磁盘进行分区、创建物理卷等工作。),接下来是利用vgextend命令将新的物理卷加入到卷组中, 我们这里使用/dev/sdc1。
[[email protected] oracle]#vgextend vg_test /dev/sdc1
Volume group "vg_test" successfully extended
[[email protected] oracle]# vgdisplay
--- Volume group ---
VG Name vg_test
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 8
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 2
Act PV 2
VG Size 59.98 GB
PE Size 4.00 MB
Total PE 15356
Alloc PE / Size 5118 / 19.99 GB
Free PE / Size 10238 / 39.99 GB
VG UUID YEYtOr-JpCK-P7MV-FFVo-BgEi-Ooef-IG3hlc

完成卷组的扩容后,就可以按照第一种情况的方法完成逻辑卷的扩容,最终实现分区的动态调整。

时间: 2024-10-12 20:57:40

Centos中动态扩容lvm逻辑卷的大小的相关文章

LVM基础详细说明及动态扩容lvm逻辑卷的操作记录

LVM概念:--------------------------------------------------------------------------------------------------------------------------------------------------------它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性.通过LVM系统管理员可以轻松管理磁盘分区,如:将若干个磁盘分区连

动态扩容lvm逻辑卷的操作记录

原文地址:https://www.cnblogs.com/huhyoung/p/9678235.html

Linux下对lvm逻辑卷分区大小的调整(针对xfs和ext4不同文件系统)

当我们在安装系统的时候,由于没有合理分配分区空间,在后续维护过程中,发现有些分区空间不够使用,而有的分区空间却有很多剩余空间.如果这些分区在装系统的时候使用了lvm(前提是这些分区要是lvm逻辑卷分区),那么就可以轻松进行扩容或缩容!不同文件系统类型所对应的创建.检查.调整命令不同,下面就针对xfs和ext2/3/4文件系统的lvm分区空间的扩容和缩容的操作做一记录:-----------------------------------------------------------------

1.4 Linux下对lvm逻辑卷分区大小的调整(针对xfs和ext4不同文件系统)

当我们在安装系统的时候,由于没有合理分配分区空间,在后续维护过程中,发现有些分区空间不够使用,而有的分区空间却有很多剩余空间.如果这些分区在装系统的时候使用了lvm(前提是这些分区要是lvm逻辑卷分区),那么就可以轻松进行扩容或缩容!不同文件系统类型所对应的创建.检查.调整命令不同,下面就针对xfs和ext2/3/4文件系统的lvm分区空间的扩容和缩容的操作做一记录: ----------------------------------------------------------------

Centos磁盘信息和LVM逻辑卷总结

一:查看磁盘和挂载情况 1)查看磁盘个数,以及挂载情况 lsblk -d 可以看到我这里有五块磁盘,类型都是disk,以及他们各自的大小 lsblk 如下图,lsblk会以树状结构的形式,将磁盘的分区以及挂载信息显示出来,可以看到这些磁盘各自的挂载情况.如,xvdb被分区成了一个区,xvdb1,这个xvdb1又被做成了逻辑卷main-lv_data,然后以逻辑卷的形式挂载到了data下,此时data目录有120G的空间,但是看上图fdisk -l的信息,发现并没有120G的磁盘,因此可以看大xv

LVM逻辑卷的管理--创建LVM、扩容,快照实战

如果对于生产环境下的服务器来说,如果存储数据的分区磁盘空间不够了怎么办? 因为如果要把一个分区的内容都拷贝到另一个分区上去,势必要首先卸载掉之前的那个分区,然后*对整个分区进行拷贝,如果服务器上运行着一个重要的服务,比如说WWW或者FTP,其要求是 7*24 小时运行正常的,那么卸载掉分区这是不可想象的,同时如果该分区保存的内容非常非常的多,那么在对分区进行转移时时间可能会耗费很久,所以,这个时候我们就会受到传统磁盘管理的限制,因为其不能够进行动态的磁盘管理.因此,为了解决这个问题,LVM技术就

LVM逻辑卷管理--在线扩容、逻辑卷与卷组容量缩减、逻辑卷快照

LVM逻辑卷管理公司生产环境中使用了LVM逻辑卷管理,所以今天花时间整理一下.通过LVM技术整合所有的磁盘资源进行分区,然后创建PV物理卷形成一个资源池,再划分卷组,最后在卷组上创建不同的逻辑卷,继而初始化逻辑卷,挂载到系统中使用.LVM对比传统硬盘存储的优点1. 统一管理:整合多个磁盘或分区形成一个资源池2. 灵活性:可以使用不同磁盘.不同分区来组成一个逻辑卷3. 可伸缩性:逻辑卷和卷组的容量都可以使用命令来扩展或者缩减,且不会影响破坏原有数据,支持磁盘热插拔.4. 支持热插拔5. 支持在线数

Linux 磁盘分区、永久挂载、创建LVM逻辑卷

实验项目: 1掌握管理Linux磁盘和分区的方法 2掌握挂载并卸载文件系统的方法 3掌握创建并管理LVM分区的方法 理论部分:一:磁盘和分区简介 1磁盘分区的表示:常见的硬盘可以划分为主分区.扩展分区.和逻辑分区.通常主分区只有4个,而扩展分区看成一个特殊的主分区类型,在扩展分区可以建立逻辑分区2现在用的硬盘都是SCSI硬盘,所以在这里主要介绍SCSI硬盘分区的结构.对于SCSI接口的硬盘表示方式是:第一块SCSI硬盘我们可以表示为"sda",第二块SCSI硬盘表示为"sdb

新手学习Linux——lvm逻辑卷创建管理

首先把防火墙关掉.iptables -Fiptables -Xiptables -Ziptables -L setenforce 0vi /etc/sysconfig/selinux #修改SELINUX首先添加块3块硬盘,为方便区分把每一块硬盘大小设置不同,分别为5G.6G和7G,硬盘的类型是默认的SCSI. fdisk /dev/sdb #对sdb硬盘进行分区Command (m for help): m #输出帮助依次输入n,p,默认,+2G即可完成.再依照上面的步骤加一个大小为1G的新分