一、RAID概念及管理
RAID:Redundant Arrays of Inexpensive(Independent) 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
JBOD 将多块磁盘的空间合并成一个连续空间使用
注:目前RAID2-4已基本淘汰,RAID0生产中也少用,RAID1,RAID5,RAID10,RAID01常见
RAID0 条带卷,读写能力提升,但无容错能力,最少需2块磁盘组成,磁盘利用率100%
RAID1 镜像卷,具有一块硬盘的容错性,需要2,2N块磁盘组成,磁盘利用率50%
RAID4 牺牲了1块硬盘实现冗余,至少3块磁盘组成,磁盘利用率(n-1)n
RAID5 带奇偶校验的条带集,至少3块磁盘组成,磁盘利用率(n-1)n,一块硬盘损坏,将大幅消耗系统性能,造成宕机,应及时更换硬盘,性价比高
RAID6 牺牲了2块硬盘实现冗余,至少4块磁盘组成,磁盘利用率(n-2)n
RAID10 先做RAID1,再做RAID0,容错性相较于RAID01更强,至少4块磁盘组成,空间利用率50%。生产中有条件情况下建议使用RAID10
RAID01 先做RAID0,再做RAID1,至少4块磁盘组成,容错性较RAID10稍弱,空间利用率50%
RAID50 先做RAID5,再做RAID0,提供了接近RAID 10性能、可用性以及接近RAID 5成本的特性,具有较好的整体性价比,至少6块磁盘组成,空间利用率(n-2)n
JBOD 可用空间sum(S1,S2…),性能无提升,至少需要2块磁盘,磁盘利用率100%
常见RAID图形示意
RAID0 条带卷,读写能力提升,但无容错能力,最少需2块磁盘组成,磁盘利用率100%
RAID1 镜像卷,读性能提升,写性能下降具有一块硬盘的容错性,需要2,2N块磁盘组成,磁盘利用率50%
RAID5 带奇偶校验的条带集,与RAID4校验位固定在一个磁盘上相比,RAID5校验位在不同磁盘上不断更替;至少3块磁盘组成,磁盘利用率(n-1)n,一块硬盘损坏,将大幅消耗系统性能,造成宕机,应及时更换硬盘,性价比高
RAID01 先做RAID0,再做RAID1,至少4块磁盘组成,容错性较RAID10稍弱,空间利用率50%
RAID10 先做RAID1,再做RAID0,容错性相较于RAID01更强,至少4块磁盘组成,空间利用率50%。生产中有条件情况下建议使用RAID10
RAID50 先做RAID5,再做RAID0,提供了接近RAID 10性能、可用性以及接近RAID 5成本的特性,具有较好的整体性价比,至少6块磁盘组成,空间利用率(n-2)n
JBOD 可用空间sum(S1,S2…),性能无提升,无冗余能力,至少需要2块磁盘,磁盘利用率100%
RAID按实现方式的不同一般分为硬件RAID和软件RAID,生产环境中多数使用硬件RAID,在下面的实
验测试环境中我们使用软件RAID。
软件RAID
mdadm 命令 为软RAID提供管理界面
为空余磁盘添加冗余
结合内核中的md(multi devices)
RAID设备可命名为/dev/md0、/dev/md1、/dev/md2、/dev/md3等
dd if=/dev/zero of=/dev/sdb1
破坏文件系统
mdadm -C /dev/md0 -a yes -l5 -n4 -x1 /dev/sd{b,c,d,e}1
创建一个RAID5,包含4块硬盘,一块空闲盘
mdadm -D /dev/md0
查看raid信息
mkfs.ext4 /dev/md0 -L raid
添加文件系统,添加卷标为raid
停用
umount /mnt/raid/
mdadm -S /dev/md0 禁用raid
-A 启用raid
模拟损坏硬盘
1 | mdadm /dev/md0 -f /dev/sdd1 |
移除损坏硬盘
1 | mdadm /dev/md0 -r /dev/sdd1 |
更换一个新硬盘
1 | mdadm /dev/md0 -a /dev/sda1 |
拓展RAID一个硬盘
1 | mdadm -G /dev/md0 -n4 -a /dev/sdb3 |
1 | ll /etc/mdadm/conf |
mdadm -Ds /dev/md0 > /etc/mdadm/conf
保存配置文件
将来重启或停止raid服务不会出现找不到配置文件的情况
二、LVM逻辑卷介绍及使用
logical Volumes 逻辑卷
- lvcreae ↑ 创建逻辑卷 ↑
Volime Group 卷组
- vgcreate ↑ 创建卷组 ↑
Physical Volumes 物理卷
- pvcreate ↑ 创建物理卷 ↑
Linux Block Devices Linux块设备
pv管理工具
显示物理卷
pvs 简要
pvdisplay 详细
创建卷组
- pvcreate /dev/DEVICE
vg管理工具
显示卷组
vgs
vgdisplay
创建卷组
- vgcreate [-s #[kKmMgGtTpPeE]] 卷组名 各分区物理路径
lv管理工具
显示逻辑卷
lvs
Lvdisplay
创建逻辑卷
lvcreate -L #[mMgGtT] -n 逻辑卷名 卷组名
lvcreate -l 60%VG -n mylv testvg
lvcreate -l 100%FREE -n yourlv testvg
lvcreate
常用选项
-c 指定chunk大小
-l 指定PE数创建逻辑卷,或[%{VG|FREE|ORIGIN}]
-L 指定大小创建逻辑卷
-n 指定逻辑卷名称
-p{r|rw}指定逻辑卷权限
-t 测试
删除逻辑卷
- lvremove /dev/VG_NAME/LV_NAME
重设文件系统大小
fsadm [options] resize device [new_size[BKMGTEP]]
resize2fs [-f] [-F] [-M] [-P] [-p] device [new_size]
LVM快照
快照是特殊的逻辑卷,它是在生成快照时存在的逻辑卷的准确拷贝
要注意快照不能替代备份作用,但可用于测试环境,在特殊情况下可代替备份效果。
快照生成时需要分配给它一定的空间,这些空间只有在原来的逻辑卷或者快照有所改变才会使用这些空间,建立快照的卷大小只需要原始逻辑卷的15%-20%就可以了,也可以使用lvextend放大快照空间要注意快照必须与被快照的LV在同一个卷组中,系统恢复时文件数量不能高于快照区的实际容量。
为现有逻辑卷创建快照与添加逻辑卷命令相同
lvcreate
创建快照常用选项:
-l 指定PE数创建快照,或[%{VG|FREE|ORIGIN}]
-L 指定大小创建快照逻辑卷
-n 指定快照名称
-p{r|rw}指定快照权限,一般设为只读
ext系列:
lvcreate -n centoslv0-snapshot -s -L 1G -p r /dev/centos6lv0
lvdisplay
mkdir /mnt/snap
mount /dev/centos6vg0/centos6lv0-snapshot /mnt/snap
xfs文件系统:
lvcreate -n centoslv0-snapshot -s -L 1G -p r /dev/lv0
lvdisplay
mkdir /mnt/snap
xfs文件系统不予许相同UUID设备进行挂载
mount -o nouuid /dev/vg0/lv0-snopshot /mnt/lv0-snap
恢复快照
umount /mnt/snap/
umount /mnt/centos6lv0/
lvconvert –merge /dev/centos6vg0/centos6lv0-snapshot
注:快照会在合并恢复后自动删除
删除快照
umount /mnt/vg0/lv0
lvremove /dev/mnt/lv0-snap