本节所讲内容:
RAID5、RAID10配置
RAID删除
建立RAID5
1) 创建RAID5
2) 停止阵列,重新激活阵列
3) 再添加新的1G热备盘,扩展阵列容量,从3磁盘个扩展到4个
实验环境: sde1,sde2,sde3,sde5,sde6 个主分区 每个1G
[root@localhost ~]# ll/dev/sde*
brw-rw---- 1 root disk8, 64 Dec 12 20:35 /dev/sde
brw-rw---- 1 root disk8, 65 Dec 12 20:35 /dev/sde1
brw-rw---- 1 root disk8, 66 Dec 12 20:35 /dev/sde2
brw-rw---- 1 root disk8, 67 Dec 12 20:35 /dev/sde3
brw-rw---- 1 root disk8, 68 Dec 12 20:35 /dev/sde4
brw-rw---- 1 root disk8, 69 Dec 12 20:35 /dev/sde5
brw-rw---- 1 root disk8, 70 Dec 12 20:35 /dev/sde6
brw-rw---- 1 root disk8, 71 Dec 12 20:35 /dev/sde7
创建RAID5
[root@localhost ~]#mdadm -C -v /dev/md5 -l 5 -n 3 -c 32 -x1 /dev/sde{1,2,3,5}
mdadm: layout defaultsto left-symmetric
mdadm: layout defaultsto left-symmetric
mdadm: size set to1047552K
mdadm: Defaulting toversion 1.2 metadata
mdadm: array /dev/md5started.
[root@localhost ~]#mdadm -Ds > /etc/mdadm.conf
[root@localhost ~]# cat!$
cat /etc/mdadm.conf
ARRAY /dev/md5metadata=1.2 spares=1 name=localhost.localdomain:5UUID=001e2e2c:3840d49c:73cdb15c:87b091b5
停止md5
停止之前先生成配置文件
[root@localhost ~]#mdadm -S /dev/md5
mdadm: stopped /dev/md5
激活:
[root@localhost ~]#mdadm -As
mdadm: /dev/md5 hasbeen started with 3 drives and 1 spare.
#再新添加一块硬盘分区/dev/sde6,希望扩展RAID5阵列到4块硬盘
[root@localhost ~]#mdadm -a /dev/md5 /dev/sde6
mdadm: added /dev/sde6
[root@localhost ~]# cat/proc/mdstat
Personalities : [raid6][raid5] [raid4]
md5 : active raid5sde6[5](S) sde1[0] sde5[3](S) sde3[4] sde2[1]
2095104 blocks super 1.2 level 5, 32kchunk, algorithm 2 [3/3] [UUU]
unused devices:<none>
[root@localhost ~]#mdadm -G /dev/md5 -n 4
[root@localhost ~]#watch -n 1 cat /proc/mdstat
重新生成配置文件
[root@localhost ~]#mdadm -Ds > /etc/mdadm.conf
[root@localhost ~]# cat!$
cat /etc/mdadm.conf
ARRAY /dev/md5metadata=1.2 spares=1 name=localhost.localdomain:5UUID=001e2e2c:3840d49c:73cdb15c:87b091b5
了解:
建立RAID 1+0双层架构的方法
方法,先创建raid1,再使用创建的raid1设备创建raid0
[root@localhost~]# ll /dev/sdf*
brw-rw----1 root disk 8, 80 Dec 12 20:52 /dev/sdf
brw-rw----1 root disk 8, 81 Dec 12 20:52 /dev/sdf1
brw-rw----1 root disk 8, 82 Dec 12 20:52 /dev/sdf2
brw-rw----1 root disk 8, 83 Dec 12 20:52 /dev/sdf3
brw-rw----1 root disk 8, 84 Dec 12 20:52 /dev/sdf4
#首先创建两个底层RAID1
[root@localhost ~]#mdadm -C -v /dev/md11 -l 1 -n 2 /dev/sdf{1,2}
[root@localhost ~]#mdadm -C -v /dev/md12 -l 1 -n 2 /dev/sdf{3,4}
#再创建上层RAID0
[root@localhost ~]#mdadm -C -v /dev/md10 -l 0 -n 2 /dev/md1{1,2}
mdadm: chunk sizedefaults to 512K
mdadm: Defaulting toversion 1.2 metadata
mdadm: array /dev/md10started.
[root@localhost ~]#mdadm -Ds > /etc/mdadm.conf
[root@localhost ~]# cat!$
cat /etc/mdadm.conf
ARRAY /dev/md5metadata=1.2 spares=1 name=localhost.localdomain:5UUID=001e2e2c:3840d49c:73cdb15c:87b091b5
ARRAY /dev/md11metadata=1.2 name=localhost.localdomain:11UUID=ba77b10e:a0307dae:3e63e88e:b458e3fe
ARRAY /dev/md12metadata=1.2 name=localhost.localdomain:12 UUID=da9ab587:79b73a6f:373b0178:73bd957e
ARRAY /dev/md10metadata=1.2 name=localhost.localdomain:10UUID=ecb7930c:53e3eaaa:c0294533:16246096
关闭所有的RAID
卸载raid的挂载
[root@localhost ~]#mdadm -Ss
全部激活:
[root@localhost ~]#mdadm -As
mdadm软RAID的删除方法
创建一个raid1
[root@localhost ~]# mdadm-C /dev/md3 -l 1 -n 2 /dev/sde8 /dev/sde9
准备环境:分区、格式化,挂载
开始删除:
[root@localhost~]# umount /opt/ #卸载设备
[root@localhost~]# mdadm -Ss #停止设备
删除配置文件
[root@localhost ~]# rm-rf /etc/mdadm.conf
清除物理磁盘中的raid标识:
[root@localhost ~]#mdadm --misc --zero-superblock /dev/sde8
[root@localhost ~]#mdadm --misc --zero-superblock /dev/sde9
参数说明:
mdadm --miscoptions... devices
report on or modify various mdrelated devices. #报告或修改各种MD相关的设备
--zero-superblock : erase the MD superblock from a device. #擦除设备中的MD超级块。
本节所讲内容:
LVM日常管理
LVM快照
磁盘配额
LVM
Logical Volume Manager(逻辑卷管理)
PV
VG
LV
概念(名词):
PV
Physical Volume(物理卷)
VG
Volume Group(卷组)
LV
Logical Volume(逻辑卷)
最小存储单位为:PE
总结:
名称 最小存储单位
硬盘 扇区(512B)
文件系统 block(1K,4K)
RAID chunk (512) mdadm -c
LVM PE (16M 自定义)
LVM层次结构图:
创建LVM:
准备分区:
#fdisk /dev/sdb 分三个分区: sdb1,2,3
[root@localhost ~]# ls/dev/sdb*
/dev/sdb /dev/sdb1 /dev/sdb2 /dev/sdb3 /dev/sdb4 /dev/sdb5
制作PV
[root@localhost ~]#pvcreate /dev/sdb{1,2}
Physical volume "/dev/sdb1"successfully created
Physical volume "/dev/sdb2"successfully created
制作VG
[root@localhost ~]#vgcreate Vg1 /dev/sdb{1,2}
Volume group "Vg1" successfullycreated
制作LV
[root@localhost ~]#lvcreate -n LV1 -L 1.5G Vg1
Logical volume "LV1" created.
#-n 指lv的name # -L 指定大小
各种查看:
#pvs #pvscan #pvdisplay
#vgs #vgscan #vgdisplay
#lvs #lvscan #lvdisplay
查看PE:
[root@localhost ~]#pvdisplay
--- Physical volume ---
PV Name /dev/sdb1
VG Name Vg1
PV Size 1.00 GiB / not usable 4.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 255
Free PE 0
Allocated PE 255
PV UUID KR0Pmy-SGW5-PQy8-x31U-q45Z-1jYN-9MS4Ny
[root@localhost ~]#vgcreate -s 16M VGrm /dev/sdb3
Physical volume "/dev/sdb3"successfully created
Volume group "VGrm" successfullycreated
# -s 指定PE大小
使用:
[root@localhost ~]#mkfs.xfs /dev/Vg1/LV1
[root@localhost ~]#mkdir /lv1
[root@localhost ~]#mount /dev/Vg1/LV1 /lv1/
LV扩展:
LVM支持动态扩容。
首先,确定一下是否有可供扩容的空间
[root@localhost ~]# vgs
VG #PV #LV #SN Attr VSize VFree
VGrm 1 0 0 wz--n- 1008.00m 1008.00m
Vg1 2 1 0 wz--n- 1.99g 504.00m
rhel 1 2 0 wz--n- 12.00g 4.00m
查看当前空间大小
[root@localhost ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
LV1 Vg1 -wi-ao---- 1.50g
root rhel -wi-ao---- 10.00g
swap rhel -wi-ao---- 2.00g
逻辑卷扩展
[root@localhost ~]#lvextend -L +300M /dev/Vg1/LV1
Size of logical volume Vg1/LV1 changed from1.50 GiB (384 extents) to 1.79 GiB (459 extents).
Logical volume LV1 successfully resized
[root@localhost ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
LV1 Vg1 -wi-ao---- 1.79g
root rhel -wi-ao---- 10.00g
swap rhel -wi-ao---- 2.00g
RHEL7对文件系统进行扩容:
[root@localhost ~]#xfs_growfs /dev/Vg1/LV1
RHEL6对文件系统进行扩容:
[root@xuegod63 ~]# resize2fs /dev/Vg1/LV1
[root@localhost ~]# df-h
/dev/mapper/Vg1-LV1 1.8G 33M 1.8G 2% /lv1
VG扩展:
[root@localhost ~]#vgextend Vg1 /dev/sde7
Physical volume "/dev/sde7"successfully created
Volume group "Vg1" successfullyextended
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 rhel lvm2 a-- 12.00g 4.00m
/dev/sdb1 Vg1 lvm2 a-- 1020.00m 0
/dev/sdb2 Vg1 lvm2 a-- 1020.00m 204.00m
/dev/sdb3 VGrm lvm2 a-- 1008.00m 1008.00m
/dev/sde7 Vg1 lvm2 a-- 1020.00m 1020.00m
LV缩减:将逻辑卷LV1 ,从1.8G缩小到1000M。
lvm支持在线缩小,但是ext4文件系统不支持在线缩小。btrfs支持在线缩小
扩展:
一直使用 ext2/3,ext 文件系统以其卓越的稳定性成为了事实上的 Linux 标准文件系统。近年来 ext2/3 暴露出了一些扩展性问题,于是便催生了 ext4 。 ext4 的作者Theodore Tso 也盛赞 btrfs 并认为btrfs 将成为下一代 Linux 标准文件系统。
首先,是扩展性 (scalability) 相关的特性,btrfs 最重要的设计目标是应对大型机器对文件系统的扩展性要求。其整体性能而不会随着系统容量的增加而降低。
其次是数据一致性 (data integrity) 相关的特性。
第三是和多设备管理相关的特性。 Btrfs 支持创建快照 (snapshot),和克隆 (clone) 。
最后,总结一些特性: 这些特性都是比较先进的技术,能够显著提高文件系统的时间 / 空间性能,包括延迟分配,小文件的存储优化,目录索引等。
LVM快照
lvm快照有两大用途,一是用来克隆虚拟机,例如做xen虚拟机时,可先新建一台完整虚拟机,假设大小为10G,然后我们可以在这台10G的虚拟机上创建1个3G的快照,接着通过这个3G的快照启动虚拟机,做完实验后,可以直接删除快照而保持原来完整虚拟机的纯净。
lvm快照的第二大用途是实时备份(moment-in-time),即为了保持系统的一致性,我们先做一个快照冻结当前系统状态,这样快照里面的内容可暂时保持不变,系统本身继续运行,通过备份快照来实现不中断服务的的备份。
本实验基于快照的热备。
在RHEL6上操作
原来有一个lv的基础上
#lvcreate -s -nlv_NAME_bak -L 200M /dev/Vg1/LV1
#创建一个名字为lv_NAME_bak,大小为200M的快照。
# snapshot
创建一个LV2
[root@localhost ~]#vgcreate vg2 /dev/sdc{1,2}
[root@localhost ~]#lvcreate -n LV2 -L 1G vg2
Logical volume "LV2" created.
格式化:
[root@localhost ~]#mkfs.ext4 /dev/vg2/LV2
[root@localhost ~]#mount /dev/vg2/LV2 /opt/
[root@localhost ~]# cp/etc/passwd /opt/
[root@localhost ~]# ls/opt/
passwd
创建一个快照:
[root@localhost ~]#lvcreate -s -n lv2_sp -L 300M /dev/vg2/LV2
Logical volume "lv2_sp" created.
查看:
[root@localhost ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
LV1 Vg1 -wi-a----- 1.79g
root rhel -wi-ao---- 10.00g
swap rhel -wi-ao---- 2.00g
LV2 vg2 owi-aos--- 1.00g
lv2_sp vg2 swi-a-s--- 300.00m LV2 0.00
[root@localhost ~]#mount /dev/mapper/vg2-lv2_sp /lv2/
备份快照
cp /lv2/* /databackup-2015-12-12
后期恢复快照只需要把备份的内容拷贝回来就可以了
学习过程中如果问题,请留言。更多内容请加:
学神IT-linux讲师-RM老师QQ:2805537762
学神IT-戚老师QQ:3341251313
学神IT-旭斌QQ:372469347
学神IT教育RHEL7交流群:468845589