RAID以及LVM逻辑卷

RAID以及LVM逻辑卷
什么是RAID
RAID:Redundant Arrays of Inexpensive(Independent) Disks
1988年由加利福尼亚大学伯克利分校(University of CaliforniaBerkeley) “A Case for Redundant Arrays of Inexpensive Disks”
多个磁盘合成一个“阵列”来提供更好的性能、冗余,或者两者都提供
RAID
提高IO能力
    磁盘并行读写
提高耐用性
    磁盘冗余来实现
级别:多块磁盘组织在一起的工作方式有所不同
RAID实现的方式
    外接式磁盘阵列:通过扩展卡提供适配能力
    内接式RAID:主板集成RAID控制器,安装OS前在BIOS里配置
    软件RAID:通过OS实现
RAID级别
RAID-0:条带卷,strip
RAID-1:镜像卷,mirror
RAID-2 
..
RAID-5 
RAID-6 
RAID-10
RAID-01
RAID-0:
    读、写性能提升
    可用空间:N*min(S1,S2,...)
    无容错能力
    最少磁盘数:2, 2+

在这里插入图片描述

RAID-1:
    读性能提升、写性能略有下降
    可用空间:1*min(S1,S2,...)
    有冗余能力
    最少磁盘数:2, 2N
RAID-4:
    多块数据盘异或运算值存于专用校验盘

在这里插入图片描述

RAID-5:
    读、写性能提升
    可用空间:(N-1)*min(S1,S2,...)
    有容错能力:允许最多1块磁盘损坏
    最少磁盘数:3, 3+

在这里插入图片描述

RAID-6:
    读、写性能提升
    可用空间:(N-2)*min(S1,S2,...)
    有容错能力:允许最多2块磁盘损坏
    最少磁盘数:4, 4+

在这里插入图片描述

RAID-10:
    读、写性能提升
    可用空间:N*min(S1,S2,...)/2
    有容错能力:每组镜像最多只能坏一块
    最少磁盘数:4, 4+

在这里插入图片描述

RAID-01
    多块磁盘先实现RAID0,再组合成RAID1

在这里插入图片描述

RAID-50
    多块磁盘先实现RAID5,再组合成RAID0

在这里插入图片描述

JBOD:Just a Bunch Of Disks
    功能:将多块磁盘的空间合并一个大的连续空间使用
    可用空间:sum(S1,S2,...)

在这里插入图片描述

RAID7
    可以理解为一个独立存储计算机,自身带有操作系统和管理工具,可以独立运行,理论上性能最高的RAID模式

常用级别:
    RAID-0, RAID-1, RAID-5, RAID-10, RAID-50, JBOD
软RAID
mdadm:为软RAID提供管理界面
为空余磁盘添加冗余
结合内核中的md(multi devices)
RAID设备可命名为/dev/md0、/dev/md1、/dev/md2、/dev/md3等

软件RAID的实现
mdadm:模式化的工具
命令的语法格式:mdadm [mode] <raiddevice> [options] <componentdevices>
支持的RAID级别:LINEAR, RAID0, RAID1, RAID4, RAID5, RAID6, RAID10 
模式:
    创建:-C
    装配:-A
    监控:-F
    管理:-f, -r, -a <raiddevice>: /dev/md#
<component-devices>: 任意块设备

-C: 创建模式
    -n #: 使用#个块设备来创建此RAID
    -l #:指明要创建的RAID的级别
    -a {yes|no}:自动创建目标RAID设备的设备文件
    -c CHUNK_SIZE: 指明块大小,单位k -x #: 指明空闲盘的个数
-D:显示raid的详细信息
    mdadm -D /dev/md# 
管理模式:
    -f: 标记指定磁盘为损坏
    -a: 添加磁盘
    -r: 移除磁盘
观察md的状态: cat /proc/mdstat

软RAID配置示例
使用mdadm创建并定义RAID设备
    mdadm -C /dev/md0 -a yes -l 5 -n 3 -x 1 /dev/sd{b,c,d,e}1
用文件系统对每个RAID设备进行格式化
    mkfs.xfs /dev/md0
测试RAID设备
使用mdadm检查RAID设备的状况
    mdadm --detail|D /dev/md0
增加新的成员
    mdadm –G /dev/md0 –n4 -a /dev/sdf1

软RAID测试和修复
模拟磁盘故障
    mdadm /dev/md0 -f /dev/sda1
移除磁盘
    mdadm /dev/md0 –r /dev/sda1
从软件RAID磁盘修复磁盘故障
    • 替换出故障的磁盘然后开机
    • 在备用驱动器上重建分区
    • mdadm /dev/md0 -a /dev/sda1
mdadm、/proc/mdstat及系统日志信息

软RAID管理
    生成配置文件:mdadm –D –s >> /etc/mdadm.conf
    停止设备:mdadm –S /dev/md0
    激活设备:mdadm –A –s /dev/md0 激活
    强制启动:mdadm –R /dev/md0
    删除raid信息:mdadm --zero-superblock /dev/sdb1
逻辑卷管理器(LVM)
允许对卷进行方便操作的抽象层,包括重新设定文件系统的大小
允许在多个物理设备间重新组织文件系统
    • 将设备指定为物理卷
    • 用一个或者多个物理卷来创建一个卷组
    • 物理卷是用固定大小的物理区域(Physical Extent,PE)来定义的
    • 在物理卷上创建的逻辑卷
        是由物理区域(PE)组成
    • 可以在逻辑卷上创建文件系统

在这里插入图片描述

LVM介绍
LVM: Logical Volume Manager, Version 2
dm: device mapper,将一个或多个底层块设备组织成一个逻辑设备的模块
设备名:/dev/dm-# 
软链接:
    /dev/mapper/VG_NAME-LV_NAME
        /dev/mapper/vol0-root
    /dev/VG_NAME/LV_NAME
        /dev/vol0/root
LVM更改文件系统的容量
LVM可以弹性的更改LVM的容量
通过交换PE来进行资料的转换,将原来LV内的PE转移到其他的设备中以降低LV的容量,或将其他设备中的PE加到LV中以加大容量

在这里插入图片描述

pv管理工具
显示pv信息
    pvs:简要pv信息显示
    pvdisplay
创建pv
    pvcreate /dev/DEVICE
删除pv
    pvremove /dev/DEVICE
vg管理工具
显示卷组
    vgs
    vgdisplay
创建卷组
    vgcreate [-s #[kKmMgGtTpPeE]] VolumeGroupName 
    PhysicalDevicePath [PhysicalDevicePath...]
管理卷组
    vgextend VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]
    vgreduce VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]
删除卷组
    先做pvmove,再做vgremove
lv管理工具
显示逻辑卷
    lvs
    Lvdisplay
创建逻辑卷
    lvcreate -L #[mMgGtT] -n NAME VolumeGroup
    lvcreate -l 60%VG -n mylv testvg
    lvcreate -l 100%FREE -n yourlv testvg
删除逻辑卷
    lvremove /dev/VG_NAME/LV_NAME
重设文件系统大小
    fsadm [options] resize device [new_size[BKMGTEP]]
    resize2fs [-f] [-F] [-M] [-P] [-p] device [new_size]
    xfs_growfs /mountpoint
扩展和缩减逻辑卷
扩展逻辑卷:
    lvextend -L [+]#[mMgGtT] /dev/VG_NAME/LV_NAME
    resize2fs /dev/VG_NAME/LV_NAME
    lvresize -r -l +100%FREE /dev/VG_NAME/LV_NAME
缩减逻辑卷:
   umount /dev/VG_NAME/LV_NAME
    e2fsck -f /dev/VG_NAME/LV_NAME
    resize2fs /dev/VG_NAME/LV_NAME #[mMgGtT]
    lvreduce -L [-]#[mMgGtT] /dev/VG_NAME/LV_NAME
    mount
注意:缩减只能缩减ext文件系统,xfs文件系统只能扩展不能缩减
创建逻辑卷示例
创建物理卷
    pvcreate /dev/sda3
为卷组分配物理卷
    vgcreate vg0 /dev/sda3
从卷组创建逻辑卷
    lvcreate -L 256M -n data vg0
    mkfs.xfs /dev/vg0/data
挂载
    mount /dev/vg0/data /mnt/data
跨主机迁移卷组
源计算机上
    1 在旧系统中,umount所有卷组上的逻辑卷
    2 禁用卷组
        vgchange –a n vg0 
        lvdisplay
    3 导出卷组
        vgexport vg0 
        pvscan
        vgdisplay
        拆下旧硬盘
在目标计算机上
    4 在新系统中安装旧硬盘,并导入卷组:vgimport vg0 
    5 vgchange –ay vg0 启用
    6 mount所有卷组上的逻辑卷
逻辑卷管理器快照
快照是特殊的逻辑卷,它是在生成快照时存在的逻辑卷的准确拷贝

对于需要备份或者复制的现有数据临时拷贝以及其它操作来说,快照是最合适的选择

快照只有在它们和原来的逻辑卷不同时才会消耗空间
    在生成快照时会分配给它一定的空间,但只有在原来的逻辑卷或者快照有所改变才会使用这些空间
    当原来的逻辑卷中有所改变时,会将旧的数据复制到快照中
    快照中只含有原来的逻辑卷中更改的数据或者自生成快照后的快照中更改的数据
    建立快照的卷大小小于等于原始逻辑卷,也可以使用lvextend扩展快照
逻辑卷管理器快照
快照就是将当时的系统信息记录下来,就好像照相一般,若将来有任何数据改动了,则原始数据会被移动到快照区,没有改动的区域则由快照区和文件系统共享
由于快照区与原本的LV共用很多PE的区块,因此快照与被快照的LV必须在同一个VG中.系统恢复的时候的文件数量不能高于快照区的实际容量

在这里插入图片描述

使用LVM快照
为现有逻辑卷创建快照(注意xfs文件系统和ext4文件系统的区别)
    lvcreate -l 64 -s -n data-snapshot -p r /dev/vg0/data
挂载快照
    mkdir -p /mnt/snap
    mount -o ro /dev/vg0/data-snapshot /mnt/snap
恢复快照
    umount /dev/vg0/data-snapshot
    umount /dev/vg0/data
    lvconvert --merge /dev/vg0/data-snapshot 
删除快照
    umount /mnt/databackup
    lvremove /dev/vg0/databackup
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值