LVM-逻辑卷管理

相关概念

物理卷:PV

物理卷就是 底层 真正存储数据的设备,这个设备可以是 整个磁盘也可以是 磁盘的某一个分区。

卷组:VG

顾名思义是组,是物理卷的组,建立在物理卷之上,由一个或多个物理卷组成;就是 将多个物理卷融合在一起来提供容量。

逻辑卷:LV

逻辑卷就是建立在卷组之上,创建逻辑卷就是在 卷组中 『切』下一部分空间来使用。

物理区域:PE

每个物理卷 被 划分的最小单位,也是寻址的最小单位,默认是4M,也可以通过选项进行修改。

逻辑区域:LE

逻辑卷被划分的 最小单位,也是寻址的最小单位,在同卷组中,PE和LE 的大小是一一对应的。

使用逻辑卷的优点:

灵活管理、动态扩容、在线扩容、离线裁剪、数据条带化、数据镜像

总结:

真实的物理设备——>逻辑上做成物理卷(pv)——>卷组(vg)——>逻辑卷(lv)


实例部分:

Demo A . 创建 一个 1G的 逻辑卷,并且挂载使用。(必须挂载到挂载点才可以使用)

(实现环境:已经存在可用磁盘而且已经分好区,用第一个主分区进行实现)

1. 查看磁盘分区情况:lsblk 命令


1. 创建物理卷

# pvcreate /dev/sdb1

创建成功会有成功信息

查看 PV 信息 命令:

# pvs  简单查看

#  pvdisplay 查看PV的详细信息

2. 创建卷组

命令:vgcreate VG名字 物理卷

# vgcreate  vg1  /dev/sdb1

创建 卷组 vg1 ,并且把物理卷 sdb1 加入卷组,卷组中可以加入多个 物理卷

查看 VG 信息命令:

# vgs 

# vgdisplay

命令 vgcreate 的常用选项

-s:卷组中物理卷的PE大小设置,默认下是 4M

-p:卷组中允许添加的最大物理卷数

-l :卷组上允许创建的最大逻辑卷数

注意: 创建 卷组的命令中,可以直接使用 /dev/sdb1 , 不用先创建物理卷,这个命令会把/dev/sdb1 自动创建为物理卷再添加到 卷组 中。

3. 创建逻辑卷

命令:lvcreate -n  LV名字 -L 容量 卷组名

#  lvcreate -n lv1 -L 2G vg1 

在 卷组 vg1 中 切下 2G 的容量 来创建 逻辑卷 lv1 

注意: 创建好 逻辑卷 后,会映射到以下两个路径:

#  ll /dev/vg1/lv1

lrwxrwxrwx. 1 root root 7 7月21 19:41/dev/vg1/lv1->../dm-0

#  ll /dev/mapper/vg1-lv1

lrwxrwxrwx. 1 root root 7 7月21 19:41/dev/mapper/vg1-lv1->../dm-0

这两个路径指的同一个文件。

详细内容查看:Linux中/dev/mapper目录浅谈

4. 格式化逻辑卷

格式化的作用:

格式化后才能挂载使用

命令:mkfs.ext4 /dev/vg1/lv1 或者   mkfs.ext4  /dev/mapper/vg1-lv1

对逻辑卷进行格式化,将文件系统格式化为 ext4

5. 挂载使用

mount   /dev/vg1/lv1  /test 

(/test 目录 已经存在,如果不存在,创建 mkdir  /test 


Demo B . 在线扩容逻辑卷

扩容逻辑卷 分为两种情况:

(a)卷组的容量足够扩容逻辑卷:

1. 查看vg 的信息 :# vgs

VG   #PV  #LV   #SN     Attr      VSize         VFree

vg1   1      1          0   wz--n-       1.86g         880.00m

2. 其中 VFree 就是 还可用容量,如果这个 容量 大于 LV 需要扩展的容量 ,那么直接对 LV 扩容:

#  lvextend -L +0.5G  /dev/vg1/lv1  在原来的基础上 增加 0.5G 

或者: 

#  lvextend -L  1.5G   /dev/vg1/lv1  将 LV 扩容 到 1.5G 

3. 将扩容的LV  同步文件系统

#  resize2fs  /dev/vg1/lv1 

(b)卷组的容量不够扩容逻辑卷

1. 卷组(VG)的容量不够 直接给  逻辑卷(LV)扩容的情况下,那么首先需要进行扩容的 是 卷组(VG)。

命令: vgextend  VG名  物理卷(或直接是 设备)

#  vgextend  vg1  /dev/sdb3 

%卷组是由 物理卷 组成,如果直接将设备 加入卷组,那么系统会自动的把设备 创建为 物理卷(PV),然后再加入卷组%

2. 再查看VG的可用容量是否满足 LV 所需大小

#  vgs 

如果不够,继续扩容 VG 的 容量,如果足够,那么就是跟 a 情况 步骤一样

注意点: 扩容逻辑卷后,一定要 进行 文件系统的扩容,就是同步文件系统。不管是扩容还裁剪,都要进行 同步文件系统。


Demo C . 离线裁剪逻辑卷容量

> 做好数据备份 通过一些 备份方法对数据进行备份

> 卸载逻辑卷

# umount  /root/stu1

> 先裁剪文件系统(同步文件系统)

%区别 扩容 操作中,先扩容再同步文件系统,裁剪逻辑卷是先 裁剪文件系统%

# resize2fs  /dev/vg1/lv1 1G    ---裁剪到 1G 的容量

#  e2fsck  -f  /dev/vg1/lv1        ---检查 磁盘

> 裁剪逻辑卷

#  lvreduce -L 1G  /dev/vg1/lv1

或者

# lvreduce -L 1G  /dev/mapper/vg1-lv1

lvs 对 逻辑卷信息查看,如果没有问题的话

> 重新挂载使用

#  mount  /dev/vg1/lv1  /root/stu1 

裁剪的注意点:

1. 裁剪前 最好 做个数据备份

2. 裁剪 后的容量大小 一定要 大于 数据的容量大小


Demo D . 逻辑卷实现条带化

概念:把保存在逻辑卷上的数据分成 n 等分,分别同时写入 到不同的物理卷中,简单理解为:条带化就是,在卷组中 有多个 物理卷,在卷组的基础上创建一个逻辑卷,这个逻辑卷的容量 是 由 卷组中所有的 物理卷 平均提供同等的容量给逻辑卷,所以 逻辑卷存储的数据 是 分成 多个 等分,存入 卷组的 物理卷中。

优缺点:可以提高数据的读写速率;如果任何一个 涉及到 的 物理卷损坏,数据都将无法恢复。

> 创建条带化的逻辑卷

# lvcreate -n lv1  -L 1G  -i 2 vg1 /dev/sdb[12]

选项 :i  ------ 指定条带化的个数(指定条带化的个数为2 ,那么表示lv1 的1G 的容量 分别 来自 物理卷 /dev/sdb1 的 0.5G 和 /dev/sdb2 的0.5G)。

> 格式化文件系统

#  mkfs.ext4  /dev/vg1/lv1

> 挂载使用

#  mount /dev/vg1/lv1  /root/stu1

> 测试

#  iostat  -d  -m  /dev/sdb[12]  2  

:-d   ------查看磁盘

    -m  -------以什么速度显示信息,表示Mb/s

     2   -------每隔2s 显示一次 *  如果 2 后面还接有数字,代表总共显示多少次



Demo D . 逻辑卷实现镜像

概念:对某个逻辑卷做数据镜像,实现数据备份作用

> 创建一个互为镜像的逻辑卷

# lvcreate  -n lv2  -L 0.7G  -m  1 vg2  dev/sdb[34]

选项:-m       ---------指定镜像的个数

> 查看镜像数据的完成

#  lvs   

> 格式化文件系统,挂载使用

mkfs.ext4  /dev/vg2/lv2

mkdir  /root/stu2

mount  /dev/vg2/lv2  /root/stu2

> 测试验证

#  dd  if = /dev/zero  of = /dev/sdb3  bs = 1M count = 300

#  vgredue  --removemissing  -f  vg2 ----强制从卷组中移除损坏的盘

> 再次将 逻辑卷 挂载使用,我们需要将坏的盘 修好换成 健康的 盘 让它 再次互为镜像

#  lvconvert   -m  1 /dev/vg2/lv2  /dev/sdb[34]


练习:

1、添加一块新的10g硬盘到你的linux系统中,并将其分为2个分区(大小自己决定),如sdb1和sdb2

答: lsblk -----查看磁盘情况

        df -h  ------查看所有分区的挂载情况

        fdisk    /dev/sdb    -------对指定的 硬盘(dev/sdb) 进行分区

分区详情:

2、创建大小为2G的逻辑卷lv01挂载到系统中的/u01目录下面,并且在/u01目录下面创建file1~file5 5个文件

答: # vgcreate  vgName  /dev/sdb1           -----创建卷组

        # lvcreate  -n  lv01  -L 2G vgName       -----创建逻辑卷

        # mkfs   -t ext4  /dev/vgName/lv01 或者  mkfs.ext4  /dev/vgName/lv01   ---格式化

        # mkdir  /u01                                         ------创建 目录 /u01

       #  mount   /dev/vgName/lv01  /u01         -----挂载到 目录 /u01

       # cd /u01                                                  ------切换到 /u01目录

       #  touch file{1..5}                                      -------创建文件file1...file5

       #  ll                                                           -------查看

3、假设sdb1分区有坏块,现在需要将sdb1分区上的数据快速移动到另外的硬盘sdb2上,怎么做?

答: #  vgextend  vg01 /dev/sdb2                   -----------把/dev/sdb2添加到卷组

        #  pvmove   /dev/sdb1  /dev/sdb2           -----------把/dev/sdb1的数据移动/dev/sdb2

*  pvmove 命令 通过 man pvmove 来查看详情。

4、由于业务需要,/u01目录需要扩大到9G,怎么做?

答: #  vgs                          -------------------查看vg的剩余容量

如果不够的话:

        #  vgextend  vg01  /dev/sdb3(/dev/sdc1....4) --------扩展VG容量  

        #  lvextend   -L 9G /dev/vg01/lv01      ------------------扩展LV容量

        #  resize2fs  /dev/vg01/lv01              -------------------同步文件系统


5、新建一个卷组vg02,PEsize为8M,在卷组中创建一个名为lv02的逻辑卷,大小为50个pe,格式化成ext3的文件系统挂载使用.

答:  #  vgcreate  -s 8M vg03  /dv/sdc1

         #   lvcreate  -n lv02  -l 50  vg02 

         #   mkfs.ext3  /dev/vg02/lv02  

         #   mount  /dev/vg02/lv02  /root/stu2

扩展:

1、测试验证已有逻辑卷的硬盘,从一台服务器换到另一台服务器上是否可以正常读取到原来的数据?需要怎么做?

答: 不能正常的读取原来的数据,要  激活 卷组,才可以挂载使用

vgchange  命令 激活卷组

2、测试验证已有互为镜像的逻辑卷的硬盘,从一台服务器换到另一台服务器上是否可以正常读取数据?怎么做?

答: 

#  lvmdiskscan     ------扫描块设备,查看逻辑卷

源端Server:

#  umount  /root/stu2    -------------------------卸载

# lvchange  -an  /dev/vg02/lv01   ------------激活逻辑卷

# vgchange  -an  vg01  -------------------------激活卷组

# vgexport    vg01         -------------------------导出卷组

目标段Server:

#  vgimport  vg01        ---------------------------导入卷组

#  vgchange  -an  vg01          ------------------激活卷组

#  mount  /root/test       --------------------------挂载使用

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,080评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,422评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,630评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,554评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,662评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,856评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,014评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,752评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,212评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,541评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,687评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,347评论 4 331
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,973评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,777评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,006评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,406评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,576评论 2 349

推荐阅读更多精彩内容