关于磁盘合并—— lvm 策略

 

     最近磁盘空间不够,有些磁盘并没有使用,因此需要将多个没用的磁盘合并,首先采用lvm ,这个也可以方便后续扩容。

介绍lvm

      总体思路;分区成LVM格式(8e- pv创建—vg创建—lv创建格式化—mount 分区–e2fsadm 调整lv 大小。

       注:多个物理卷创建一个卷组,一个卷组可以创建多个逻辑卷,物理卷可以是一个磁盘也可以是一个分区。

lvm 创建的过程:

  1. 创建物理卷—pvcreate

Pvcreate  设备名

例如:Pvcreate  /dev/sda{2,3,4}  /dev/adb   (一次性可创建多个)

 

: pvcreate (创建)pvdisplay 设备名(查看)、pvscan (查看)

如果需要的分区有数据,你可以不用先格式,在创建物理卷的时候会自动

初始化,

 

2         创建卷组—vgcreate

例如:Vgcreate  [-v] [-s 8M]  卷组名  /dev/sda{2,3}  /dev/sdb

 

  注:display (查看),这些命令也可以—help 看一下,

    1-s 创建的卷组的PE 大小,必须是4的整数倍,决定卷组的最大支持空间,计

       算如下:

         8* PE= 支持的最大空间

2VG创建好后,自动就Active起来,若没有自动Active则可以通过  vgchange -a y vg01

   关闭acticevgdeactive ,

3) 只有对Deactive VG才能进行更改、删除;VG的重命名不需要Deactive,如 vgrena

  Me  old_vg_name new_vg_name;

 4) 若在创建了LVM后发现硬盘空间不够,则可以创建一个LVM分区,通过pvcreate

    激活此分区,再通过vgextend加入到现有VG中以扩充空间。

        

3        创建逻辑卷—lvcreate

Lvcreate [options]  -n 逻辑卷名  卷组名

 

可选项有:

   "-i Stripes :采用交错(striped)方式创建LV,其中Stripes指卷组中PV的数量。 
   "-I Stripe_size :采用交错方式时采用的块大小(单位为KB)Stripe_size必须为2的指数:2N N=2,3...9 
   "-l LEs :指定LV的逻辑块数。 
   "-L size :指定LV的大小,其后可以用KMG表示KBMBGB 
   "-s :创建一已存在LVsnapshot卷。 
   "-n name :为LV指定名称。

一般如下:

         Lvcreate –L 大小 –n 逻辑卷名  卷组名

           我遇到这个问题,查看vgdispay 的时候大小是6.65TIB ,我需要给全部的

               大小时,指定6.65 大小报错,如下:

                     [root@server139 ~]#lvcreate -L 6.65TiB -n hadoop hadoop_lvm

                          Rounding up size tofull physical extent 6.65 TiB

  Volume group "hadoop_lvm" hasinsufficient free space (1743005 extents): 1743258 required

            思路: 这个问题是这个卷组还有一点空闲空间,对于PE 数,所以需要这样的  

                    来执行。lvcreate -l 100%FREE -n hadoop hadoop_lvm 这是使用所有的            

                     的空间,否则会报错。

              

      4.创建文件系统

Mkfs –t 文件类型  lvm设备名

       5. 挂载

                 

       6. 增减卷组大小

           E2fadm –L +大小   设备名