逻辑卷管理

LVM:linux系统中对磁盘管理的一个工具,建立在物理设备上的一个抽象层,优点在于灵活管理。
优点:
1.动态扩容
2.离线裁剪
3.条带化
4.镜像

基本概念:
  物理卷(pv):底层真正提供容量的设备,可以时一块硬盘也可以时硬盘的分区
  卷组(vg):  卷组是建立在物理卷之上的,由物理卷组成,其大小是该卷组中的物理卷大小之和
  逻辑卷(lv):逻辑卷时我们最终使用的东西,是建立在卷组之上,大小是从卷组中切出来的一点空间
  物理区域(PE):每一个物理卷被划分成称为PE的最小基本单元,是能被LVM寻址的最小单位,默认是4M
    逻辑区域(LE):逻辑卷也被划分为称为LE的最小级别单元,在同一个卷组中,LE和PE是相同的一一对应的


         物理的设备-》物理卷(pv)->卷组(vg)->逻辑卷(lv)->格式化lv->挂载使用lv



   demo1:
     需要一个1.5G的空间来存放业务数据,并且日后可以动态扩容
        思路:
         1.物理设备
         2.物理卷->卷组(>1.5g)->逻辑卷(1.5g)        
            步骤:
              1》、sdb5 sdb6  各1G
              2》、创建物理卷
                # pvcreate /dev/sdb[56]
                # pvs 简单查看
                /dev/sdb5           lvm2 a--   1.01g 1.01g
                /dev/sdb6           lvm2 a--   1.01g 1.01g
                # pvdisplay 详细查看

              3》、创建卷组
                # vgcreate vg01 /dev/sdb[56]
                  Volume group "vg01" successfully created
                # vgs
                  VG       #PV #LV #SN Attr   VSize  VFree
                  vg01       2   0   0 wz--n-  2.02g 2.02g
                  vg_node1   1   2   0 wz--n- 19.51g    0 

                # vgdisplay

             4》、创建逻辑卷
                # lvcreate -n lv01 -L 1.5G vg01
                  Logical volume "lv01" created
                -L:指定最终大小
                -l:指定pe的个数或者卷组剩余空间的百分比
                lvcreate -n lv01 -l %50free vg01
                # lvs
                  LV      VG       Attr       LSize  Pool Origin Data%  Move Log Cpy%Sync Convert
                  lv01    vg01     -wi-a-----  1.50g                                             
                  lv_root vg_node1 -wi-ao---- 17.51g                                             
                  lv_swap vg_node1 -wi-ao----  2.00g 

                # lvdisplay

        5》.格式化逻辑卷
          逻辑卷创建好后会映射到两个地方:
                    # ll /dev/vg01/lv01 
                    lrwxrwxrwx 1 root root 7 Apr 18 15:08 /dev/vg01/lv01 -> ../dm-2
                    # ll /dev/mapper/vg01-lv01 
                    lrwxrwxrwx 1 root root 7 Apr 18 15:08 /dev/mapper/vg01-lv01 -> ../dm-2

                    # mkfs.ext4 /dev/vg01/lv01

          6》、挂载使用
                        # mkdir /u01
                        # mount /dev/vg01/lv01 /u01
    demo2: 动态扩容/u02 目录到3G

         情况1: 当逻辑卷所在的卷组的卷组空间不够,需要先扩容卷组
                    # vgextend vg01 /dev/sdb2
                      Volume group "vg01" successfully extended
                    # lvextend /dev/vg01/lv01 -L +1.5G 扩容逻辑卷
                    # resize2fs /dev/vg01/lv01   同步文件系统
         情况2:卷组空间足够
                    # lvextend /dev/vg01/lv01 -L 3G 扩容逻辑卷
                    # resize2fs /dev/vg01/lv01   同步文件系统

demo3:离线裁剪
1.备份数据
2. 卸载逻辑卷
# umount /u01
3.裁剪逻辑卷
# e2fsck -f /dev/vg01/lv01
# resize2fs /dev/vg01/lv01 1G
# lvreduce /dev/vg01/lv01 -L 1G

         相关命令:
                   pvcreate
                    vgcreate
                    lvcreate
                    vgextend
                    lvextend
                    lvreduce
                    vgreduce vgname pvname
                    vgremove vgname
                    pvremove pvname
                    lvremove lvname


        demo4:逻辑卷实现条带化
            条带化:将保存在逻辑卷上的数据,分成n等分分别保存到不同的设备上;
            优点:可以提高读写的速度;缺点:一个硬盘损坏,那么数据就损坏
          创建前:
                            # pvs
                              PV         VG       Fmt  Attr PSize  PFree
                              /dev/sdc1  vg01     lvm2 a--   2.00g 2.00g
                              /dev/sdc2  vg01     lvm2 a--   2.00g 2.00g

                            创建实现条带化的逻辑卷lv01,大小为2G
                            # lvcreate -n lv01 -L 2G -i 2 vg01 /dev/sdc[12]

                            创建后:
                            # pvs
                              PV         VG       Fmt  Attr PSize  PFree
                              /dev/sdc1  vg01     lvm2 a--   2.00g 1.00g
                              /dev/sdc2  vg01     lvm2 a--   2.00g 1.00g

                            测试验证:
                            # mkfs.ext4 /dev/vg01/lv01
                            # mount /dev/vg01/lv01 /u01
                            # iostat -d m 2 /dev/sdc[12]
                            # cp /iso/xxx /u01


      demo5:实现镜像的逻辑卷
                镜像:将保存到逻辑卷上的数据复制一份写到另一个设备上,数据的冗余,浪费空间
                创建前:
                # pvs
                  PV         VG       Fmt  Attr PSize  PFree
                  /dev/sdc1  vg01     lvm2 a--   2.00g 1.00g
                  /dev/sdc2  vg01     lvm2 a--   2.00g 1.00g
                  /dev/sdc5  vg02     lvm2 a--   2.00g 2.00g
                  /dev/sdc6  vg02     lvm2 a--   2.00g 2.00g

                # lvcreate -n lv02 -L 2G -m 1 vg02 /dev/sdc[56]
                # lvs
                  LV  VG   Attr   LSize  Pool Origin Data%  Move Log    Cpy%Sync Convert
                  lv01  vg01 -wi-ao----  2.00g                     
                  lv02  vg02 mwi-a-m---  2.00g    lv02_mlog    69.92  初始化数据 100%代表完成   
      创建后:
                # pvs
                  PV         VG       Fmt  Attr PSize  PFree
                  /dev/sdc1  vg01     lvm2 a--   2.00g 1.00g
                  /dev/sdc2  vg01     lvm2 a--   2.00g 1.00g
                  /dev/sdc5  vg02     lvm2 a--   2.00g 4.00m
                  /dev/sdc6  vg02     lvm2 a--   2.00g    0 

      测试验证:
                mkfs -t ext4 /dev/mapper/vg02-lv02
                mkdir /u02
                mount /dev/mapper/vg02-lv02 /u02
                echo hello888 > /u02/file1
      破坏验证:
                pvs
                dd if=/dev/zero of=/dev/sdc5 bs=1M count=100
                pvs
                vgreduce vg02 --removemissing --force
                umount /u02
                mount /dev/vg02/lv02 /u02
                cat /u02/file1

       硬盘修复好后再次互为镜像:
                pvcreate /dev/sdc5
                vgextend vg02 /dev/sdc5
                pvs
                lvconvert -m1 /dev/vg02/lv02 /dev/sdc[56]

课后练习:
1、添加一块新的10g物理硬盘,并将其分2个分区,eg:sdb1和sdb2
2、创建一个大小为2G的逻辑卷lv01挂载到/u01目录下,并且在该目录下创建file1~file5文件
说明:lv01的空间完全来自于sdb1设备
3、假设sdb1分区有坏块,现在需要将sdb1分区上的数据快速放到另一个sdb2分区,怎么做?
pvmove
4、由于业务需要,/u01目录需要扩大到5G,怎么做?
5、新建一个名为vg02的卷组,PE大小为8M,并且在该卷组中创建一个lv02逻辑卷,大小为50个PE,格式化成vfat格式的文件系统类型,并且使用autofs自动挂载到/test目录下
6、给你的虚拟机的/增加10g空间

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值