《That‘s how Linux should learn》——charpter7

charpter7 使用RAID与LVM磁盘阵列技术

独立冗余磁盘阵列(RAID)

介绍几种最常见的RAID磁盘阵列方案

RAID0:提升了硬盘设备的读写速度

RAID 0 技术把多块物理硬盘设备(至少两块)通过硬件或软件的方式串联在一起,组成 一个大的卷组,并将数据依次写入到各个物理硬盘中。这样一来,在最理想的状态下,硬盘设 备的读写性能会提升数倍,但是若任意一块硬盘发生故障将导致整个系统的数据都受到破坏。 通俗来说,RAID 0 技术能够有效地提升硬盘数据的吞吐速度,但是不具备数据备份和错误修 复能力。

RAID1:安全性(备份)

生产环境对硬盘设备的读写速度没有要求,而是希望增加数据的安全性时, 就需要用到 RAID 1 技术了。
在写入数据时,是将数据同时写入到多块硬盘设备上(可以将其视为数据的镜像或备 份)。当其中某一块硬盘发生故障后,一般会立即自动以热交换的方式来恢复数据的正常 使用。
但是因此此硬盘设备的利用率会下降。

RAID5

RAID5 技术是把硬盘设备的数据奇偶校验信息保存到其他硬盘设备中。 RAID 5 技术实 际上没有备份硬盘中的真实数据信息,而是当硬盘设备出现问题后通过奇偶校验信息来尝试 重建损坏的数据。RAID 这样的技术特性“妥协”地兼顾了硬盘设备的读写速度、数据安全性 与存储成本问题。

RAID10

大部分企业更在乎的是数据本身的价值而非硬盘价格,因此生产环境中主要使 用 RAID 10 技术。
RAID 10 技术是 RAID 1+RAID 0 技术的一个“组合体”。
RAID 10 技术需要至少 4 块硬盘来组建,其中先分别两两制作成 RAID 1 磁盘阵列,以保 证数据的安全性;然后再对两个 RAID 1 磁盘阵列实施 RAID 0 技术,进一步提高硬盘设 备的读写速度。

部署磁盘阵列

1、首先,在虚拟机中添加 4 块硬盘设备来制作一个 RAID 10 磁盘阵列。记得在关闭系统之后,再在虚拟机中添加硬盘设备,否则可能会因为计算 机架构的不同而导致虚拟机系统无法识别添加的硬盘设备。
mdadm 命令用于管理 Linux 系统中的软件 RAID 硬盘阵列,格式为“mdadm [模式] <RAID 设备名称> [选项] [成员设备名称]”。
在这里插入图片描述
2、使用 mdadm 命令创建 RAID 10,名称为“/dev/md0”。
-C 参数代表创建一个 RAID 阵列卡;
-v 参 数显示创建的过程,同时在后面追加一个设备名称/dev/md0,这样/dev/md0就是创建后的RAID 磁盘阵列的名称;
-a yes 参数代表自动创建设备文件;
-n 4 参数代表使用 4 块硬盘来部署这个 RAID 磁盘阵列;
-l 10 参数则代表 RAID 10 方案;最后再加上 4 块硬盘设备的名称就搞定 了。
mdadm -Cv /dev/md0 -a yes -n 4 -l 10 /dev/sdb /dev/sdc /dev/sdd /dev/sde
3、把制作好的 RAID 磁盘阵列格式化为 ext4 格式。
mkfs.ext4 /dev/md0
4、创建挂载点然后把硬盘设备进行挂载操作
mkdir /RAID
mount /dev/md0 /RAID
df -h
5、查看/dev/md0 磁盘阵列的详细信息,并把挂载信息写入到配置文件中,使其永久 生效。
mdadm -D /dev/md0
echo “/dev/md0 /RAID ext4 defaults 0 0” >> /etc/fstab

损坏磁盘阵列及修复

在确认有一块物理硬盘设备出现损坏而不能继续正常使用后,应该使用 mdadm 命令将其 移除,然后查看 RAID 磁盘阵列的状态。
mdadm /dev/md0 -f /dev/sdb
mdadm -D /dev/md0

磁盘阵列+备份盘

极端情况,RAID1中的磁盘都坏了,怎么办那?
备份盘技术:该技术额核心理念就是准备一块足够大的硬盘,这块硬盘平时处于闲置状态,一旦RAID磁盘阵列中有硬盘出现故障后则会马上自动顶替上去。

LVM逻辑卷管理器

硬盘分好区或者部署为 RAID 磁盘阵列之后,再想修改硬盘分区大小就不 容易了。
硬盘设备资源管理技术——LVM (逻辑卷管理器),允许用户对硬盘资源进行动态调整。
逻辑卷管理器创建的初衷:解决硬盘设备在创建分区后不易修改分区大小的缺陷。尽管对传统的硬盘分区进行强制扩容或缩容从理论上来讲是可行的,但是却可能造成数据的丢失。而 LVM 技术是在硬盘分区和文件系统之间添加了一个逻辑层,它提供了一个抽象的卷组,可以把多块硬盘进行卷组合并。这样一来,用户不必关心物理硬盘设备的底层架构和布局,就可以实现对硬盘分区的动态调整。
王家面粉+李家面粉+张家面粉=>大面团=>小馒头,重量须是每勺面粉的倍数。
物理卷 卷组 逻辑卷 基本单元

部署逻辑卷

部署 LVM 时,需要逐个配置物理卷、卷组和逻辑卷。
1、对新硬盘进行创建物理卷的操作,可以将该操作简单理解成让硬盘设备支持 LVM 技术,或者理解成是把硬盘设备加入到 LVM 技术可用的硬件资源池中。
2、然后对这两块硬盘进行卷组合并,卷组的名称可以由用户来自定义。
3、根据需求把合并后的卷组切割出一个约为 150MB 的逻辑卷设备,最后把这个逻 辑卷设备格式化成 EXT4 文件系统后挂载使用。
第一步:让新添加的两块硬盘设备支持 LVM 技术
pvcreate /dev/sdb /dev/sdc
第二步 :把两块硬盘设备加入到 storage 卷组中,然后查看卷组的状态。
vgcreate storage /dev/sdb /dev/sdc
vgdisplay
第三步:切割出一个约为 150MB 的逻辑卷设备
在对逻辑卷进行切割时有两种计量单位:
以容 量为单位,所使用的参数为-L。例如,使用-L 150M 生成一个大小为 150MB 的逻辑卷。
以基本单元的个数为单位,所使用的参数为-l。每个基本单元的大小默认为 4MB。例 如,使用-l 37 可以生成一个大小为 37×4MB=148MB 的逻辑卷。
lvcreate -n vo -l 37 storage
lvdisplay
第四步:把生成好的逻辑卷进行格式化,然后挂载使用。
Linux 系统会把 LVM 中的逻辑卷设备存放在/dev 设备目录中(实际上是做了一个符号链 接),同时会以卷组的名称来建立一个目录,其中保存了逻辑卷的设备映射文件(即/dev/卷组 名称/逻辑卷名称)。
mkfs.ext4 /dev/storage/vo
第五步: 查看挂载状态,并写入到配置文件,使其永久生效。

扩容逻辑卷

扩展前记得卸载设备和挂载点的关联。 umount /linuxprobe
1、把逻辑卷 vo 扩展至 290MB:
lvextend -L 290M /dev/storage/vo
2、 检查硬盘完整性,并重置硬盘容量
e2fsck -f /dev/storage/vo
3、 重新挂载硬盘设备并查看挂载状态
mount -a
df -h

缩小逻辑卷

在执 行缩容操作前记得先把文件系统卸载掉。umount /linuxprobe
1、检查文件系统的完整性。 e2fsck -f /dev/storage/vo
2、把逻辑卷 vo 的容量减小到 120MB
resize2fs /dev/storage/vo 120M
3、重新挂载文件系统并查看系统状态
mount -a
df -h

逻辑卷快照

该功能类似于虚拟机软件的还原时间点功能。例如,可 以对某一个逻辑卷设备做一次快照,如果日后发现数据被改错了,就可以利用之前做好的快 照卷进行覆盖还原。
LVM 的快照卷功能有两个特点:
➢ 快照卷的容量必须等同于逻辑卷的容量;
➢ 快照卷仅一次有效,一旦执行还原操作后则会被立即自动删除。
1、首先查看卷组的信息 vgdisplay
2、用重定向往逻辑卷设备所挂载的目录中写入一个文件。
echo “Welcome to Linuxprobe.com” > /linuxprobe/readme.txt
ls -l /linuxprobe
3、使用-s 参数生成一个快照卷,使用-L 参数指定切割的大小。另外,还需要在命令后面写上是针对哪个逻辑卷执行的快照操作。
lvcreate -L 120M -s -n SNAP /dev/storage/vo
lvdisplay
4、在逻辑卷所挂载的目录中创建一个 100MB 的垃圾文件,然后再查看快照卷的状态。可以发现存储空间占的用量上升了。
dd if=/dev/zero of=/linuxprobe/files count=1 bs=100M
lvdisplay
5、为了校验 SNAP 快照卷的效果,需要对逻辑卷进行快照还原操作。在此之前记得先卸载掉逻辑卷设备与目录的挂载。
umount /linuxprobe
lvconvert --merge /dev/storage/SNAP
6、快照卷会被自动删除掉,并且刚刚在逻辑卷设备被执行快照操作后再创建出来的 100MB 的垃圾文件也被清除了。
mount -a
ls /linuxprobe/

删除逻辑卷

删除逻辑卷之前,需要提前备份好重要的数据信息,然后依次删除逻辑卷、卷组、物理卷设备,顺序不可颠倒。
1、取消逻辑卷与目录的挂载关联,删除配置文件中永久生效的设备参数。 umount /linuxprobe vim /etc/fstab
2、删除逻辑卷设备,需要输入 y 来确认操作
lvremove /dev/storage/vo
3、删除卷组,此处只写卷组名称即可,不需要设备的绝对路径。
vgremove storage
4、删除物理卷设备。
pvremove /dev/sdb /dev/sdc
在上述操作执行完毕之后,再执行 lvdisplay、vgdisplay、pvdisplay 命令来查看 LVM 的信 息时就不会再看到信息了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值