发表于 2019-2-18 08:20:14

Linux Raid及LVM


[*]  RAID
  RAID简介:RAID(Redundant Arrays of Independent Disks )独立冗余硬盘阵列;1988年由加利福尼亚大学伯克利分校研发
     把多块硬盘组合成一个“阵列”来提供更好的冗余和性能

     提高IO能力:磁盘并行读写
     提高耐用性:磁盘冗余来实现
   RAID实现方式
      硬件RAID
           外接磁盘阵列:通过扩展卡提供适配能力
           内接RAID:主板集成RAID控制器;安装OS前在BIOS里配置
      软件RAID
   RAID有级别之分;级别:多块磁盘组织在一起的工作方式有所不同
  常见的级别RAID-0, RAID-1, RAID-5, RAID-10, RAID-50, JBOD

     RAID-0条带集strip
      工作原理:将连续的数据均匀分散存放在多块硬盘上
      性能提升:读、写
      冗余能力:无
      空间利用率:n
      硬盘个数:2,2+
      http://s1.运维网.com/images/20180426/1524744261672060.png
      RAID-1 镜像mirror
     工作原理:每块盘上存放相同数据
     性能提升:读性能提升,写性能下降
     冗余能力:有
     空间利用率:1/2
     硬盘个数:2,2n
        http://s1.运维网.com/images/20180426/1524744438382476.png
     RAID-4
        有一块硬盘存放校验位;其它硬盘上存放数据;因为存放校验位的盘很容易坏;所以导致RAID-4使用较少
     RAID-5 带奇偶校验的条带集
        工作原理:数据和奇偶校验信息分别存放在不同磁盘上
      性能提升:读、写
        冗余能力:有允许最多坏一块盘
        空间利用率:(n-1)/n
        硬盘个数:3,3+
     http://s1.运维网.com/images/20180426/1524745059440017.png
      RAID-6
        工作原理:在RAID-5的基础上又增加了一位校验位;数据和两位校验位分别存放在不同硬盘上
        性能提升:读、写
        冗余能力:有允许最多坏二块盘
        空间利用率:(n-2)/n
        硬盘个数: 4,4+
      http://s1.运维网.com/images/20180426/1524745203746072.png
   RAID-10
     工作原理:先实现RAID-1再组合成RAID-0
     性能提升:读、写
     冗余能力:有每组镜像最多只能坏一块
     空间利用率:1/2
     硬盘个数:4,4+
     http://s1.运维网.com/images/20180426/1524745622333838.png
     RAID-01
     工作原理:先实现RAID-0再组合成RAID-1
     性能提升:读、写
     空间利用率:1/2
      硬盘个数:4,4+
     http://s1.运维网.com/images/20180426/1524746062523250.png
     RAID-50
     工作原理:先实现RAID-5再组合成RAID-0
     性能提升:读、写
     冗余能力:有
     空间利用率:(n-2)/n
     硬盘个数:6,6+
     http://s1.运维网.com/images/20180426/1524746128171128.png
     JBOD
        工作原理:将多块磁盘的空间合并一个大的连续空间使用
        性能提升:无
        冗余能力:无
        空间利用率:100%
        硬盘个数:至少2块
     http://s1.运维网.com/images/20180426/1524746437141020.png
  
     RAID7    理解为一个独立存储计算机,自身带有操作系统和管理工具,可以独立运行,理论上性能最高的RAID模式
  软件RAID
     为空余磁盘添加冗余;设备命名为/dev/md0、/dev/md1,...
     mdadm 为软RAID提供管理界面;模式化的工具
       支持的RAID级别:LINEAR, RAID0, RAID1, RAID4, RAID5, RAID6, RAID10
     mdadm
              -C装载
                 -a {yes|no}:自动创建目标raid设备的设备文件
                 -l #:指定raid级别
                 -n #:指明使用#个块设备来创建raid
                 -x #:指明空闲盘个数
                 -c #:指定chunk大小
        mdadm -C /dev/md0 -a yes -l5 -c 256 -n3 -x1 /dev/sda{c,d,e,f}
              -D | --detail:显示raid详细信息
            mdadm -D /dev/md#
              cat /proc/mdstat显示raid状态
               -f:标记指定磁盘为损坏
            mdadm /dev/md# -f /dev/DEVICE模拟磁盘故障
               -a:添加磁盘
            mdadm /dev/md# -a /dev/DEVICE
            mdadm -G /dev/md# -a /dev/DEVICE添加新成员
               -r:移除磁盘
            mdadm /dev/md# -r /dev/DEVICE
        mdadm -Ds /dev/md#>> /etc/mdadm.conf   生成配置文件
        mdadm -S /dev/md#停止设备
        mdadm -As/dev/md#激活设备
        mdadm -R /dev/md#强制启动
        mdadm --zero-superblock /dev/DEVICE清除raid信息
     软件raid实现步骤
               1、准备硬盘或分区
               2、创建RAID
               3、创建文件系统
               4、挂载
               5、创建RAID配置文件
      删除raid
           1、取消挂载
           2、删除raid配置文件
           3、停止raid
           4、清除raid信息
           5、删除硬盘分区

[*]  LVM
  
  LVM(Logical Volume Manager)逻辑卷管理
      dm:device mapper,将一个或多个底层块设备组合成一个逻辑设备的模块
  设备名/dev/dm-#
   软链接
           /dev/vg_name /lv_name --> /etc/dm-#
           /dev/vg_name/lv_name --> /etc/dm-#
     http://s1.运维网.com/images/20180426/1524748320541967.png
     LVM可弹性更改LVM容量
        通过交换PE来进行资料转换,将原来LV内的PE移动到其它设备中以降低LV容量,或将其它设备中的PE添加到LV中以加大容量
     PE:Physical Extent 分配卷组空间的单位
     PV(Physical Volumes):物理卷;VG(Volume Group):卷组;LV(Logical Volumes):逻辑卷
              http://s1.运维网.com/images/20180427/1524834268387666.png
  逻辑卷管理器
     允许对卷进行方便操作的抽象层,包括重新设定文件系统大小;在多个物理设备间重新组织文件系统
        1、将设备指定为物理卷
              物理卷用固定大小的物理区域(PE)来定义
        2、用一个或多个物理卷来创建卷组
        3、在物理卷上创建逻辑卷
        4、可以在逻辑卷上创建文件系统
   PV管理工具
  pvs | pvdisplay 查看物理卷信息
  pvcreate /dev/DEVICE...创建物理卷
  pvremove /dev/DEVICE删除物理卷
  pvmove /dev/DEVICE把指定设备中数据从一个物理卷中移到同一卷组中另一个物理卷上
   VG管理工具
  vgs | vgdisplay查看卷组
  vgcreate/dev/DEVICE/dev/DEVICE1... 创建卷组
  vgchange vgname
                     -s #:改变PE大小
                    -an:禁用卷组
                    -ay:激活卷组
  vgextend /dev/vgname/lvname扩展卷组
                    -L #:以容量为单位
                    -l #:以PE数量为单位
                       -r:扩展容量同时重新设定文件系统大小
  vgextend vgname /dev/vgname/lvname新物理卷加入到旧卷组中
  vgreducevgname /dev/DEVICE缩减卷组
  vgexportvgname 导出卷组
  vgimportvgname 导入卷组
  vgrename vgname vgrename 重命名卷组
  vgremove vgname 删除卷组
  LV管理工具
   lvs | lvdisplay查看逻辑卷
   lvcreatevgname
                  -n:指定逻辑卷名
               -L #:指定大小,以容量为单位
              -l #:指定大小,以PE个数为单位
   lvextend/dev/vgname/lvname扩展逻辑卷
                  -L #:以容量为单位
                       +#:增加多少
                          #:指定多少
                  -l:以PE为单位
                  -r:扩展容量时同时重新设定文件系统大小
   lvreduce/dev/vgname/lvname缩减逻辑卷
                 -L #:指定缩减容量
   lvremove vgname   删除逻辑卷
   lvrename lvname /dev/vgname/lvrename    重命名逻辑卷
  一、创建逻辑卷
            pvcreate/dev/sdx/dev/sdy
            vgcreate[-s 16M] vgname/dev/sd{x,y}
            lvcreate-nlvname-L50Gvgname
  二、扩展逻辑卷
      1、添加物理硬盘
      2、创建物理卷
      3、添加物理卷到旧卷组中(扩展卷组)
      4、扩展逻辑卷
      5、重新设定文件系统大小
     相关命令
         pvcreate/dev/sdx
         vgextend   vgname/dev/sdx
         lvextend -L50G/dev/vgname/lvname
         resize2fs   /dev/vgname/lvname
  三、缩减逻辑卷
      1、取消挂载
      2、检查文件系统
      3、重新设定文件系统大小
      4、缩减逻辑卷
      5、挂载
        umount
        ckfs -f/dev/vgname/lvname
        resize2fs/dev/vgname/lvname10G
        lvreduce -L 10G /dev/vgname/lvname
        mount
  注意:缩减文件系统有可能会造成数据丢失
  四、删除vg中的pv缩减vg
         1、添加物理硬盘或分区
         2、创建物理卷
         3、创建卷组并把物理卷加入
         4、迁移空间(把存放数据的物理卷上所有占用的PE移到同一卷组里的其它成员上)
         5、缩减卷组
         6、删除物理卷(物理卷变为普通硬盘)
     相关命令
         pvcreate /dev/sdx
         vgcreate vgname /dev/sdx
         pvmove/dev/sdy
         vgreduce vgname /dev/sdy
         pvremove /dev/sdy
  五、跨主机迁移卷组
     源主机
           1、取消挂载
           2、禁用卷组
           3、导出卷组
      目标主机
           4、导入卷组
           5、激活卷组
           6、挂载
      相关命令
           umount
           vgchange-anvgname
           vgexportvgname
           vgimportvgname
           vgchange -ay vgname
           mount
  六、快照管理
     创建快照
     快照恢复
     删除快照
  

  

  




页: [1]
查看完整版本: Linux Raid及LVM