高级文件系统管理

RAID
提高IO能力:磁盘并行读写
提高耐用性:磁盘冗余来实现
级别:多块磁盘组织在一起的工作方式有所不同 raid0 raid1 raid 5
RAID实现的方式:
外接式磁盘阵列:通过扩展卡提供适配能力
内接式raid ;主板集成raid控制器
安装os前在bios里配置
软件raid:通过os实现
常用raid级别
raid 0 :读写性能提示 raid 0
无容错能力 A1 A2
最少磁盘数 2 A3 A4

raid 1 :读性能提升、写性能下降 raid 1
有冗余能力 容错率高 A1 A1
最少磁盘数 2 A2 A2
raid 5 :读写性能提升 raid 5
有容错能力 ,允许最多一块磁盘损坏 A1 A2 A3 Ap
最少磁盘数 3 B1 B2 Bp B3
C1 Cp C2 C3
Dp D1 D2 D3
raid 10 (1+0)
读写性能提升
有容错能力:每组镜像最多只能坏一块
最少磁盘数 4
两个raid 1 组成一个raid 0
raid 01 (0+1)
读写性能提升
有容错能力:每组镜像最多只能坏一块
最少磁盘数 4
两个raid 0 组成一个raid 1
raid 50 (5+0):多块磁盘先实现raid5 在组合成raid 0
RAID的具体实现
硬件实现方式:通过BIOS参数调整来实现
软件实现方式:通过软件工具mdadm实现
mdadm
-C: 创建模式
-n #: 使用#个块设备来创建此RAID
-l #:指明要创建的RAID的级别
-a {yes|no}:自动创建目标RAID设备的设备文件
-c CHUNK_SIZE: 指明块大小
-x #: 指明空闲盘的个数
-D:显示raid的详细信息;
mdadm -D /dev/md#
管理模式:
-f: 标记指定磁盘为损坏
-a: 添加磁盘
-r: 移除磁盘
观察md的状态:
cat /proc/mdstat
例:1.在VMware当中为该主机增加虚拟硬盘
2.echo '- - -' > /sys/class/scsi_host/host0/scan 使新增的硬盘立刻生效
3.创建raid0
mdadm -C /dev/md0 -a yes -l 0 -n 2 /dev/sd{c,d}
4.分区fdisk /dev/md0 非必需
5.格式化mkfs.ext4 /dev/md0
6.挂载
查看raid状态
方法1: cat /proc/mdstat
方法2: mdadm -D /dev/md0

创建raid1
mdadm -C /dev/md1 -a yes -l 1 -n 2 /dev/sd{e,f} -x 1 /dev/sdg
创建raid5
mdadm -C /dev/md2 -a yes -l 5 -n 3 /dev/sd{h,i,j}
使用四块盘,做一个raid 10。
mdadm -C /dev/md1 -a yes -l 10 -n 4 /dev/sd{e..h}

删除raid
1.卸载
2.停掉raid
mdadm -S /dev/mdX
3.清空该raid每个成员盘的superblock
mdadm --zero-superblock /dev/sdX /dev/sdY ……
给raid新增成员
mdadm –G /dev/md0 –n 3 -a /dev/sdf1
模拟损坏 仅限raid1和raid5
mdadm /dev/md0 -f /dev/sdc
模拟移除
mdadm /dev/md0 -r /dev/sdc
模拟增加
mdadm /dev/md0 -a /dev/sdc
保存raid状态
mdadm -D -s /dev/md0 > /etc/mdadm.conf

共享热备盘
1.分别创建raid1和raid5。
2.mdadm -D -s > /etc/mdadm.conf
3.编辑mdadm.conf
ARRAY /dev/md1 metadata=1.2 name=instructor.magedu.com:1 UUID=eb6fbe24:2449dde5:da515f42:48694ac4 spar
e-group=magedisk
ARRAY /dev/md5 metadata=1.2 spares=1 name=instructor.magedu.com:5 UUID=19dea50d:2cecbdbf:5891cb66:463e
6c2c spare-group=magedisk
MAILADDR root
4.启动服务
centos6:service mdmonitor restart
centos7:systemctl restart mdmonitor

LVM(逻辑卷管理)
PV (物理卷) VG(卷组) LV(逻辑卷)
与LV相关的管理命令:
lvcreate:创建LV
lvscan:查询系统上面的LV
lvdisplay: 显示系统上的LV的状态
lvextend:在LV里面添加容量
lvreduce:在LV里面减少容量
lvremove: 删除一个LV
lvresize:对LV进行容量大小的调整
创建LVM
pvcreate /dev/md1 /dev/md5
vgcreate vgmage /dev/md1 /dev/md5 /dev/sdi
lvcreate -L 38M -n lvlinux31 vgmage
lvcreate -l 20 -n lvpython8 vgmage
mkfs.ext4 /dev/vgmage/lvlinux31
mkfs.xfs /dev/mapper/vgmage-lvpython8
mount /dev/vgmage/lvlinux31 /app/lvmdata2
mount /dev/vgmage/lvpython8 /app/lvmdata2

要想真正的使用lvm就必须对lv进行格式化挂载
1、mkfs -t ext3 /dev/mageduvg/magedulv
2、mkdir /mnt/lvm
3、mount /dev/mageduvg/magedulv /mnt/lvm

逻辑卷的在线扩展
情况1:卷组大小足够扩展
方法一:
lvextend -L +1G /dev/vgmage/lvlinux31
resize2fs /dev/vgmage/lvlinux31
方法二:
lvextend -L 1.5G /dev/vgmage/lvlinux31 -r

情况2:卷组大小不够扩展
pvcreate /dev/sdj
vgextend vgmage /dev/sdj
lvextend -L +3G -r /dev/vgmage/lvlinux31

XFS
lvextend -r -L 1G /dev/vgmage/lvpython8
xfs_growfs /dev/vgmage/lvpython8

逻辑卷减小
1.卸载
2.扫描
3.减小文件系统大小
4.减小逻辑卷大小

umount /app/data0/
e2fsck -f /dev/vgmage/lvlinux31
resize2fs /dev/vgmage/lvlinux31 50M
lvreduce -L 50M /dev/vgmage/lvlinux31

如果顺序反了,先执行了减逻辑卷,则扩展回去,再重新扫描
lvextend -L 500M /dev/vg_mage/lv_home
e2fsck -f /dev/vg_mage/lv_home
resize2fs /dev/vg_mage/lv_home 200M
lvreduce -L 200M /dev/vg_mage/lv_home

实验:将逻辑卷迁移到其他主机
1.增加一个独立文件的虚拟磁盘到源主机
2.将该磁盘做为PV,扩展进卷组
3.将所有数据都移动到将要拆卸的物理卷上
pvmove /dev/md5 /dev/sdk
4.将源卷组设置为非激活
vgchange -an vgmage
5.如果卷组中除了要拆卸的硬盘外还有其他的PV,则进行lvreduce,如没有,直接第6步
vgreduce vgmage /dev/md1 /dev/md5 /dev/sdi /dev/sdj
6.将源卷组设置为export状态
vgexport vgmage
7.拔硬盘,并加到目标主机
8.把vgmage设置为import
vgimport vgmage
9.把卷组设置为激活
lvchange -ay vgmage
10.挂载

快照
创建快照:lvcreate - L 1G -s -n mageduss /dev/mageduvg/magedu/
显示信息:lvdisplay
创建快照目录:mkdir /mnt/snapshot
挂载:mount /dev/mageduvg/mageduss /mnt/snapshot

利用快照恢复数据
需要注意:需要回复的数据不能超过快照区的总大小
演示:先在原来的lv中写入一些数据,然后通过lvm的快照功能恢复到之前的操作
1、cp -R /etc/mnt/lvm/
2、创建一个数据恢复的临时目录:mkdir -PV /tmp/backup
3、cd /mnt/snapshot
4、tar -zcf /tmp/backup/lvm.tar.gz *
5、将 mageduss 卸载并移除,因为里面的内容已经备份出来了
(1) umount /mnt/snapshot
(2) lvremove /dev/mageduvg/mageduss
6、解压备份出来的文件和 /mnt/lvm 目录中的数据做比对看是否已经恢复到相关操作之前
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值