首页 > 其他分享 >LVM管理

LVM管理

时间:2023-06-19 09:57:20浏览次数:37  
标签:快照 管理 创建 storage dev LV LVM

一、LVM理论

LVM,即Logical Volume Manager,逻辑卷管理器,是一种硬盘的虚拟化技术,可以允许用户的硬盘资源进行灵活的调整和动态管理。
LVM是Linux系统对于硬盘分区管理的一种机制,诞生是为了解决硬盘设备在创建分区后不易修改分区大小的缺陷。尽管对硬盘的强制性扩容和缩容理论上是可行的,但是却可能造成数据丢失。LVM技术是通过在硬盘分区和文件系统之间增加一个逻辑层,提供了一个抽象的卷组,就可以把多块硬盘设备、硬盘分区,甚至RAID整体进行卷则合并。并可以根据情况进行逻辑上的虚拟分割,这样一来,用户不用关心物理硬盘设备的底层架构和布局,就可以实现对硬盘分区设备的动态调整。
LVM的架构体系中,有三个很重要的概念:
PV,物理卷,即实际存在的硬盘、分区或者RAID
VG,卷组,是由多个物理卷组合形成的大的整体的卷组
LV,逻辑卷,是从卷组上分割出来的,可以使用使用的逻辑存储设备
LVM架构体系如下图所示:

二、LVM创建和管理命令

在部署LVM时,要依次配置PV物理卷、VG卷组和LV逻辑卷。常用的LVM部署命令如下表所示:

功能/命令物理卷管理卷组管理逻辑卷管理
扫描 pvscan vgscan lvscan
建立 pvcreate vgcreate lvcreate
显示 pvdisplay vgdisplay lvdispaly
删除 pvremote vgremote lvremote
扩展 物理卷不能扩展 vgextend lvextend
缩小 物理卷不能缩小 vgreduce lvreduce

三、LVM创建和管理实战

接下来,我将使用Vmware虚拟机,来进行LVM的创建和管理实战。

(一)实战目标

建立LVM,LVM的PV分别是RAID 1,磁盘和磁盘分区。并进行LV的扩容、缩容、快照、删除等实验。

(二)硬件准备

在Vmware虚拟机上新添加四块硬盘,如下图所示

 

 

 

 

(三)LVM创建PV、VG和LV

分别使用mdadm和fdisk创建RAID 1和磁盘分区,在这里我们选择/dev/sdb和/dev/sdc制作RAID,/dev/sdd创建磁盘分区,命令(fdisk为交互式界面,配置过程略)如下:

mdadm -Cv /dev/md0 -n 2 -l 1 /dev/sdb /dev/sdc

结果如下:

 


之后创建物理卷,命令如下:

pvcreate /dev/md0 /dev/sdd1 /dev/sde

效果如下:

 


然后创建卷组,命令如下:

vgcreate storage /dev/md0 /dev/sdd1 /dev/sde

效果如下:

 


接下来就可以创建逻辑卷了,我们尝试创建一个大小为10G的逻辑卷,在创建逻辑卷时,lvcreate命令常用参数如下:
-L 指定逻辑卷的大小(实际大小,如1G、512M等,该大小必须为4M的整数倍,否则大小会自动增大称为成4M整数倍)
-l 指定逻辑卷的大小(基本单元个数,-l后面数字乘4M为实际逻辑卷的大小)
-n 表示逻辑卷名称
逻辑卷创建命令如下:

lvcreate -n lv0 -L 10G storage

最终,我们在/dev目录下能够生成一个同名的磁盘文件,如下所示:

 


这样,当我们创建文件系统、挂载后,就可以正常使用逻辑卷了,命令如下所示:

mkfs.xfs /dev/storage/lv0
mkdir -p /lvm
mount /dev/storage/lv0 /lvm

 

此时,我们已经可以查看逻辑卷的挂载情况了,效果如下所示:

 

(四)LV扩容

在生产环境中,经常会出现的一种现象就是随着业务的拓展,我们原先分配的硬盘分区不够使用,这时我们就需要对硬盘进行扩容。LVM的逻辑卷可以方便的进行扩容。LV扩容步骤如下所示:

lvextend -L 15G /dev/storage/lv0
xfs_growfs /dev/storage/lv0

 

上述第一条命令表示对LVM的逻辑卷进行扩容,-L表示扩容后的大小而不是增加的大小,也可以使用-l参数指定大小。第二条命令是在创建xfs系统后,让xfs系统随着LV的增大而增大。

 


注意:
1、在进行扩容前,请保证LVM的卷组内有足够的空间可以进行扩容。
2、如果在LV扩容的时候,还没有创建文件系统,则可以省略上述第二条命令。
3、如果是xfs系统扩容,可以不用umount,如果是ext4系统扩容,则必须使用umount。

(五)LV缩容

在一般情况下,不允许对磁盘设备进行缩容,因为这可能造成数据丢失的风险。尽管如此,LVM还是提供了LV缩容的方法。
然而,xfs系统不允许缩容,如果是ext4系统,缩容配置如下:

e2fsck -f /dev/storage/lv0
resize2fs /dev/storage/lv0 10G
mount -a

 

上述第一条命令是对文件系统进行缩容,第二条命令是对LVM的卷组进行缩容,第三条命令是重新挂载。

(六)LV快照

LVM具备快照的功能,该功能类似于Vmware中的快照,LVM可以创建一个快照卷,快照卷就如同一个LV的备份。在操作中可以使用快照卷将LV的状态还原到某个节点的状态。
我们首先创建一个逻辑卷,在完成文件系统创建和挂载后,向该LV中写入一个实验性文件,过程如下:

lvcreate -n lv1 -L 1G /storage
mkfs.ext4 /dev/storage/lv1
mount /dev/storage/lv1 /lvm
echo “LVM snapshoot” > experiment.txt

 

让后,我们创建快照卷,在lvcreate命令中,使用-s参数创建快照卷,如下所示:

lvcreate -L 1G -s -n lvsnap /dev/storage/lv1

 

这样,快照卷就创建好了,如下所示:

 


接下来,我么尝试使用快照卷的恢复功能,方法是删掉刚才在lv1中创建的experiment.txt文件,然后恢复快照卷,查看新的lv1中experiment文件是否存在。过程如下:

rm -rf /lvm/experiment.txt
umount /lvm
lvconvert --merge /dev/storage/lvsnap
mount /dev/storage/lv1 /lvm
ll /lvm
cat /lvm/experiment

 

结果如下所示:

 

(七)PV、VG和LV删除

PV、VG和LV的删除比较简单,只要简单的使用pvremove、vgremove和lvremove进行删除即可,但是在删除时一定要注意,先解除挂载再删除LV,先删除LV再删除VG,先删除PV最后删除PV。
相关命令如下:

unount /lvm
lvremove /dev/storage/lv1
vgremove /dev/storage
pvremove /dev/md0 /dev/sdd1 /dev/sde













 

转载出处:https://blog.csdn.net/weixin_40228200

标签:快照,管理,创建,storage,dev,LV,LVM
From: https://www.cnblogs.com/jiaodaoniujava/p/17490371.html

相关文章

  • 要禁用 Windows Server 2022 2025时自动打开服务器管理器,可以通过以下批处理命令实现
    要禁用WindowsServer20222025时自动打开服务器管理器,可以通过以下批处理命令实现:首先打开记事本,输入以下命令:@echooffregadd"HKLM\Software\Microsoft\ServerManager"/vDoNotOpenServerManagerAtLogon/tREG_DWORD/d1/f保存文件,将文件名后缀改为.bat。......
  • 进程和计划任务管理
    进程和计划任务管理推荐步骤:➢管理系统的静态进程动态进程以及前台和后台任务管理➢计划任务管理服务和应用实验步骤:管理系统的静态进程动态进程以及前台和后台任务管理查看系统的终止手动启动使用根据进程名字杀死进程启动查看进程树查看进程树和端口查看进程树显示指定使用使用......
  • Kubernetes集群认证管理
    Kubernetes集群中所有资源的访问和变更都是通过Kubernetes API Server的REST API来实现的,所以集群安全的关键就在于如何识别并认证客户端身份(Authentication),以及随后访问权限的授权(Authorization)这两个问题。Kubernetes集群提供了3种级别的客户端身份认证方式。1.最严格的HT......
  • 关于lvm磁盘管理中lv-logical-volume逻辑卷的创建-新建
    在lvm-(LogicalVolumeManager)-逻辑卷管理的简写),在磁盘管理体系中,有一个lv的概念lv即是logicalvolume逻辑卷的缩写,今天笔者主要讲解一下关于lv的创建过程 在创建之前,需要有几个知识点需要明白一下1、lv是从vg中进行创建的,一个操作系统中,是可以有多个vg的2、因此在创建......
  • bitwarden 搭建密码管理服务器
    BitwardenOpenSourcePasswordManager支持多端同步部署代码点击查看代码mkdir/app/bitwarden/datadockerrun-d\--rm\--namebitwarden\-p8080:80\-p3012:3012\-eSIGNUPS_ALLOWED=true......
  • C++家谱管理系统[2023-06-18]
    C++家谱管理系统[2023-06-18]小组项目二实验题目:家谱管理系统实验目的:1、掌握树以及二叉树的定义;2、掌握树以及二叉树的基本操作,如建立、查找、插入和删除等。实验要求:小组合作方式,共同讨论完成该任务。实验内容:家谱管理系统是查询家谱信息必不可少的一部分,利用家谱管理系......
  • 学生管理系统实体类
     ......
  • Fastadmin会员管理-添加会员
    Fastadmin添加会员功能默认的框架没有这个功能,代码修改教程如下1.修改debug--/application/config.php修改成app_debug=true2.新增/application/admin/view/user/user/index.html文件修改,添加增加add按钮{:build_toolbar('refresh,add,edit,del')}3.新增/applicatio......
  • 多个物理磁盘挂载到同一目录的方法 (lvm 软raid)
    多个物理磁盘挂载到同一目录的方法(lvm软raid)背景公司里面的一台申威3231的机器因为这个机器的raid卡没有操作界面.所以只能够通过命令行方式创建raid自己这一块比较菜,想着先尝试使用lvm的方式进行软raid挂载,也验证一下性能.所以写一些这个文章简单的结论虽然lv......
  • 菜品管理业务开发
    1. 文件的上传下载  4-2这里解释文件的上传时上传到我们后端指定的路径,下载时下到前端页面去1.1 文件上传介绍  4-2文件上传,也称为upload,是指将本地图片、视频、音频等文件上传到服务器上,可以供其他用户浏览或下载的过程。文件上传在项目中应用非常广泛,我们经常发微博、发......