RAID磁盘冗余阵列
1.I/O 速度
2.数据安全性
RAID 0
负载均衡。速度乘以二,但是数据安全性不行,任何一块盘损坏数据都会丢失。
RAID 1
安全性性提升2倍,任何一个损坏另一个都有备份。速度略有降低。成本增加了。浪费了一半。
RAID 5
有一块损坏之后加进去一块新的硬盘之后可以尝试恢复。这样的好处是其中任何一设备损坏后不至于出现致命缺陷
奇偶校验和
RAID 10(他不叫RAID10 而是RAID 1 0 因为他是由RAID1和RAID0组成的)
速度提升两倍,数据安全性也是提升两倍。成本增加了。
为了更安全来一个热备盘。
部署磁盘阵列
我们添加4个新的硬盘
mdadm命令用于管理Linux系统中的软件RAID硬盘阵列,格式为“mdadm [模式]
参数 | 作用 |
-a | 检测设备名称 |
-n | 指定设备数量 |
-l | 指定RAID级别 |
-C | 创建 |
-v | 显示过程 |
-f | 模拟设备损坏 |
-r | 移除设备 |
-Q | 查看摘要信息 |
-D | 查看详细信息 |
-S | 停止RAID磁盘阵列 |
我们创建一个磁盘阵列组。用mdadm
-C是创建v是显示过程,/dev/mdo是设备名称,我们统一管理叫md0合并之后的名字 -n 是我们用几块盘,-l是级别我们是10 后面是我们的设备名称,我们用通配符来写[b-e]
然后我们用mdadm -Q /dev/md0查看发现他的大小是39.97GIB,级别为10,设备是由4个盘组成出来,0个备份盘然后他提醒我们可以使用mdadm --detail....查看详细信息。我们这里用mdadm -D /dev/md0 来查看。
我们看到里面有4块盘,sdb/c/d/e 而且处于初始化的状态。已经初始化完成。
然后我们用mkfs.xfs /dev/md0来进行格式化
然后我们mkdir /lala创建一个啦啦的目录
然后我们用mount命令将磁盘挂载到lala目录下
然后我们用df -h 查看挂载信息,发现他会显示/dev/md0的磁盘大小为40G挂载到了/lala目录
别以为这样就完了,千万别忘了我们要将他写入到/etc/fstab文件中才能永久生效,不然重启之后就会变回去。
好,我们用vim /etc/fstab
接下来我们进行破坏
我们先进入lala子目录,然后从其他地方复制过来一些文件。
然后我们把第四块硬盘移除了,将相当于服务器上把硬盘拔了。
这时候会提醒我们有一块硬盘损坏了,我们点进去查看详情
他会提醒我们两个硬盘丢失掉了,并且正在进行数据的同步。
然后我们再用mdadm -D /dev/md0查看,
他会告诉我们果然有两个硬盘损坏了,并且是离线状态。
然后我们再将他添加回去,或者插回去。
然后我们给他移除
然后我们mdadm -D /dev/md0查看一下
看到已经显示移除了
然后我们添加或者插进去之后查看一下,他又出现了SDC和SDD。这里建议最好重启一下或者说如果插上去之后还是显示没有的话就重启一下。
然后我们给他用个-a参数,加进去一个sdc /sdd,然后我们mdadm -D /dev/md0查看
并且我们可以看到他已经在做数据同步了
下面我们看一下热备
再复习一下,-C就是创建的意思,-v就是显示创建过程,然后加上创建的RAID的名称/dev/md0 ,然后-n 3是表示这个RAID是y由3块盘组成,-l 5是说他的级别是5,也就是RAID5 。-x 1是说其中的一个盘作为备份盘的意思也就是作为热备份盘符。然后dev目录里的sdb sdc sdd sde .我们用通配符表示就是[b-e]。
然后我们用mdadm -D /dev/md0查看状态。发现已经有了,已经初始化完毕,而且第四块盘他是一个spare也就是空闲状态。
然后我们mkfs.ext4 /dev/md0 来给这个md0进行格式化
接下来创建个目录(随便创建)
mkdri /xiaoliu
然后我们mount 将md0挂载到xiaoliu目录下,df -h查看
别忘了写入文件,vim /etc/fstab
然后我们还是给他复制一些文件到里面。
然后我们马上移除一块盘。
过段时间后他会提醒我们一块盘坏了。
然后我们用mdadm -D /dev/md0查看会发现他已经在自己备份了。备份了93了已经。很快。或者从刚才报错的图形界面也可以看到。是不是很安全啊,但是我们要记住备份盘只要你不出问题的话,他就是个闲盘。钱多了可以用多块备份盘。
还有热备盘在损坏之后,在损坏的盘恢复后数据会清空,以便下次去使用。
LVM逻辑卷管理器
目的是让用户灵活的变更分区的大小
PV物理卷。(资源)
VG卷组。(揉在一起)
LV逻辑的卷(切)
常用的LVM部署命令
功能/命令 | 物理卷管理 | 卷组管理 | 逻辑卷管理 |
扫描 | pvscan | vgscan | lvscan |
建立 | pvcreate | vgcreate | lvcreate |
显示 | pvdisplay | vgdisplay | lvdisplay |
删除 | pvremove | vgremove | lvremove |
扩展 | vgextend | lvextend | |
缩小 | vgreduce | lvreduce |
分为3个步骤,1是pv 2是vg 3是lv。
下面实验先增加两块盘,几块都行,
先pvcreate 创建
然后我们vgcreate 创建卷组,
名称为juanzu,物理盘是sdb sdc
然后我们用vgdisplay 查看卷组详情
可以看到已经有了,大小为40GB
然后我们进行切割用lvcreate
其中haha是我们给逻辑卷起的名字。两个参数。-l 是 pe个数,-L 是pe大小(pe是最小硬盘的单位,4的倍数)juanzu是我们给卷组气的名称。这里我们l代表pe个数,我们给他个,每个4M,也就是100 x 4M = 400M
(在/dev/卷组名称里面会有一个逻辑卷的名称。也就是/dev/juanzu/haha)
接下来我们格式化一下他
这里一定要记着格式化命令,mkfs.ext4 格式化的逻辑卷轴路径(我们这里格式的事ext4格式,你也可以换其他的)
然后创建个随便的文件夹,mount给他挂载上去。df -h查看
我们看到已经成功,大小为380M(创建的400M,但是这个是有点出入的,不可能一样的)
然后vim /etc/fstab 编辑到文件中,以防重启之后失效。
然后我们重启,df -h查看
接下来我们umount 给他卸载掉。然后给他进行扩容
-L是大小,上面说过了。lvextend就是扩容的命令
然后我们e2fsck -f 路径 查看他有没有损坏,没报错说明没损坏。
然后我们告诉系统我们要进行扩展,,发现报错了,让我们检查一下,也及时e2fsck -f 上面说道的,还是不行,别慌,我们重启一下就好了。
重启完之后还要卸载一下的啊,然后我们rezize2fs /dev/juanzu/haha看出来成功了。
然后我们进行挂载。
我们再复习一下mount 的参数吧,就是挂载的参数,-a很厉害,挂载所有。
参数 | 作用 |
-a | 挂载所有在/etc/fstab中定义的文件系统 |
-t | 指定文件系统的类型 |
接下来我们来压缩一下。
老样子,先卸载umount /dev/juanzu/haha
然后e2fsck -f 检查一下有没有报错损坏
然后我们给他缩小到300M
然后用lvreduce -L 300 /dev/juanzu/haha 给他缩小到300M,他会告诉我们这会很危险,我们y继续。
然后挂载mount -a 然后df -h查看。
看到已经缩小了。
接下来看一下快照
我们先进入laoji这个目录,看到里面没有文件,然后我们给他随便复制进去一些文件,
然后返回根目录用lvcreate 创建个快照,其中-s就是快照的意思。-n 是快照名称,我们起一个xiaomei。
然后我们lvdisplay看一下快照卷
还看到for haha说这个快照卷来自haha逻辑卷
然后我们再进入laoji目录,将里面文件都删除掉
发现里面已经空了
接下来我们用快照来恢复我们的文件系统。
先umount /laoji卸载掉我们文件系统
然后我们用lvconvert --merge /dev/juanzu/xiaomei 来恢复。
提示我们已经成功了,我们看一下
然后我们继续挂载一下所有目录,df -h 查看一下会发现已经挂载到我们laoji的子目录里面了,我们看一下,刚才不是都删除了么,现在看一下恢复回来没有。
回来了。
注意事项:
1.快照卷容量必须等于对象逻辑卷
2.快照卷是一次性的,放你恢复之后他就会消失。为了系统资源更好的利用
但是我过我们不想用LVM怎么办,下面我告诉你们怎么卸载掉。
首先卸载掉逻辑卷,然后我们将etc/fstab目录里面我们加进去的删除掉。
然后我们lvremove 将他移除掉。这是第一步
第二部我们rgremove掉juanzu
最后我们pvremove掉sdb和sdc。和安装正好相反。