首页 > 其他分享 >LVM(Logical Volume Manager)

LVM(Logical Volume Manager)

时间:2023-12-24 23:05:24浏览次数:35  
标签:LV PV vg lv Volume Manager PE LVM

1.1 LVM相关概念和机制
LVM(Logical Volume Manager)可以让分区变得弹性,可以随时随地的扩大和缩小分区大小,前提是该分区是LVM格式的。
lvm需要使用的软件包为lvm2,一般在CentOS发行版中都已经预安装了。
• PV(Physical Volume)即物理卷
  硬盘分区后(还未格式化为文件系统)使用pvcreate命令可以将分区创建为pv,要求分区的system ID为8e,即为LVM格式的系统标识符。
• VG(Volume Group)即卷组
将多个PV组合起来,使用vgcreate命令创建成卷组,这样卷组包含了多个PV就比较大了,相当于重新整合了多个分区后得到的磁盘。虽然VG是整合多个PV的,但是创建VG时会将VG所有的空间根据指定的PE大小划分为多个PE,在LVM模式下的存储都以PE为单元,类似于文件系统的Block。
• PE(Physical Extend)
PE是VG中的存储单元。实际存储的数据都是存储在这里面的。
• LV(Logical Volume)
VG相当于整合过的硬盘,那么LV就相当于分区,只不过该分区是通过VG来划分的。VG中有很多PE单元,可以指定将多少个PE划分给一个LV,也可以直接指定大小(如多少兆)来划分。划分为LV之后就相当于划分了分区,只需再对LV进行格式化即可变成普通的文件系统。
通俗地讲,非LVM管理的分区步骤是将硬盘分区,然后将分区格式化为文件系统。而使用LVM,则是在硬盘分区为特定的LVM标识符的分区后将其转变为LVM可管理的PV,其实PV仍然类似于分区,然后将几个PV整合为类似于磁盘的VG,最后划分VG为LV,此时LV就成了LVM可管理的分区,只需再对其格式化即可成为文件系统。
• LE(logical extent)
PE是物理存储单元,而LE则是逻辑存储单元,也即为lv中的逻辑存储单元,和pe的大小是一样的。从vg中划分lv,实际上是从vg中划分vg中的pe,只不过划分lv后它不再称为pe,而是成为le。
LVM之所以能够伸缩容量,其实现的方法就是将LV里空闲的PE移出,或向LV中添加空闲的PE。
1.2 LVM的写入机制
LV是从VG中划分出来的,LV中的PE很可能来自于多个PV。在向LV存储数据时,有多种存储机制,其中两种是:
• 线性模式(linear):先写完来自于同一个PV的PE,再写来自于下一个PV的PE。
• 条带模式(striped):一份数据拆分成多份,分别写入该LV对应的每个PV中,所以读写性能较好,类似于RAID 0.(数据库的数据盘可以采用这种模式,lvcreate -L 6G -i 2 -I 1024K -n lv_dbdata vg_db选项i和I就是使用条带模式)
尽管striped读写性能较好也不建议使用该模式,因为lvm的着重点在于弹性容量扩展而非性能,要实现性能应该使用RAID来实现,而且使用striped模式时要进行容量的扩展和收缩将比较麻烦。默认的是使用线性模式。

pvcreate        pvs        pvdisplay
vgcreate        vgs        vgdisplay
lvcreate        lvs         lvdisplay
#创建pv
pvcreate -f /dev/sdb
pvcreate -f /dev/sdc

#创建vg
vgcreate -s 128M -y vg_db /dev/sdb /dev/sdc

#创建lv
lvcreate -L 6G -i 2 -I 1024K -n lv_dbdata vg_db
lvcreate -L 12G -i 2 -I 1024K -n lv_dblog vg_db

#格式化
mkfs.xfs /dev/mapper/vg_db-lv_dbdata
mkfs.xfs /dev/mapper/vg_db-lv_dblog
mkdir  -pv /dbdata /dblog

#挂载
vim /etc/fstab
......
UUID=8b44b7a0-ef1b-44cf-a05d-282bade96044 /dbdata                 xfs     defaults  0  0      
UUID=31dcf481-3fa2-4d91-9bff-d2f655d05efc /dblog                  xfs     defaults  0  0
......

mount -a
df -h
#############################################################################################
##############扩容lvm
pvcreate /dev/sdd
pvs
vgextend vg_db /dev/sdd
vgs
lvextend -L 12G /dev/mapper/vg_db-lv_dbdata
xfs_growfs /dev/mapper/vg_db-lv_dbdata

标签:LV,PV,vg,lv,Volume,Manager,PE,LVM
From: https://blog.51cto.com/u_7469027/8957154

相关文章

  • Generative AI generates tricky choices for managers
     GenerativeAIgeneratestrickychoicesformanagersTransformationaltechnologiescanbeverytrying   THEREMARKABLEcapabilitiesofgenerativeartificialintelligence(AI)areclearthemomentyoutryit.Butremarkablenessisalsoaproble......
  • Spring基于XML的事务管理器DataSourceTransactionManager
    Spring基于XML的事务管理器DataSourceTransactionManager源码代码测试pom.xml<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instan......
  • K8S - Add-on: cert-manager
    https://cert-manager.io/docs/ cert-managercert-manageraddscertificatesandcertificateissuersasresourcetypesinKubernetesclusters,andsimplifiestheprocessofobtaining,renewingandusingthosecertificates.Itcanissuecertificatesfroma......
  • LVM磁盘
    深入了解Linux中的逻辑卷管理(LVM)Linux作为一种强大的操作系统,提供了多种高级磁盘管理技术,其中之一就是逻辑卷管理(LogicalVolumeManagement,简称LVM)。LVM允许对磁盘空间进行更灵活、更动态的管理,提高了系统对存储资源的利用率。在这篇博客中,我们将深入研究Linux中LVM的概......
  • 使用VisualVM浏览分析堆转储
    堆转储是Java虚拟机(JVM)堆中所有对象在某个时间点的快照。JVM为堆中所有类实例和数组的对象分配内存。当不再需要某个对象并且没有对该对象的引用时,垃圾回收器会回收堆内存。通过VisualVM检查堆,您可以找到对象的创建位置,并在源中找到对这些对象的引用。如果JVM软件无法从堆中删......
  • Seata 启动报错:[imeoutChecker_1] i.s.c.r.netty.NettyClientChannelManager : no av
    Seata启动报错:[imeoutChecker_1]i.s.c.r.netty.NettyClientChannelManager:noavailableservertoconnect.1.问题2.解决【application.xml和file.conf参数要相对应】......
  • 记录ArcGIS Server Manager服务的网站配置文件泄露漏洞
    描述此漏洞在ArcGISServer10.2forWindows上被发现,在启用了ArcGISServerManager服务时,通过GET请求[主机+端口]/arcgis/manager/3370/js/../WEB-INT/web.xml地址,任意用户可获取ArcGIS的manager应用服务配置。风险等级:低(被泄露的文件对所有此产品用户可见,不包含机密信息)分......
  • ASP.NET WebApi(.Net Framework) 应用CacheManager
    ASP.NETWebApi(.NetFramework)应用CacheManager,内存+Redis1,WebApi版本选.net4.6.2以上版本2,nuget包Unity(4.0.0.1)Unity.AspNet.WebApi(4.0.0.1)CacheManager.CoreCacheManager.Microsoft.Extensions.Caching.MemoryCacheManager.Microsoft.Extensions.ConfigurationCacheMa......
  • Docker部署Nginx Proxy Manager
    更新环境aptupdate-y&&aptinstall-ycurlsocatwgetsudoBBRPLUS四合一脚本wget-N--no-check-certificate"https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh"&&chmod+xtcp.sh&&./tcp.sh安装Dockerc......
  • Linux LVM磁盘
    逻辑卷管理(LogicalVolumeManager,LVM)是一种用于在Linux系统上管理磁盘空间的技术。物理卷(PhysicalVolume,PV):物理卷是一个实际的磁盘分区或整个磁盘,用于创建卷组。使用pvcreate命令来将物理卷初始化为LVM。pvcreate/dev/sdX卷组(VolumeGroup,VG):卷组是由一个或多个物理卷组......