• 欢迎访问显哥博客,本网站纯属学习技术,绝无商业用途,欢迎小伙伴们共同学习!研究技术!QQ:52249909 加我QQ
  • 世界75亿人,这么小的概率,能认识你,是我一生的幸运,不妨加个QQ接触一下:52249909 加我QQ

磁盘阵列RAID及逻辑卷LVM管理【显哥出品,必为精品】

运维基础 lixian 4年前 (2020-01-04) 3069次浏览 3个评论 扫描二维码
文章目录[隐藏]

1、磁盘阵列RAID

01. 什么是RAID磁盘阵列

RAID简称磁盘阵列,那么什么是阵列,例如:古代打仗时为什么要对士兵进行排兵布阵,其目的在于提高士兵整体的作战能力,而不是某个士兵的战斗力。
那么回到磁盘中,我们也可以将多块磁盘组合进行排列,提高磁盘的整体的读写能力和冗余能力,通常我们将其称为磁盘阵列。

02. 为什么要使用RAID磁盘阵列

1.在RAID中,可以让很多磁盘同时传输数据,因为多块磁盘在逻辑上感觉是一个磁盘,所以使用RAID可以达到单个磁盘的几倍、几十倍甚至上百倍的速率。
2.硬盘其实非常的脆弱,它经常会坏掉。所以有了RAID这个东西。它的目的是将好几个硬盘合并在一起,就算硬盘坏了一个,剩下还有好几个硬盘是正常的,这样服务器还能正常提供服务。保证磁盘高可用。
3.可以获得更高的容量。
PS:RAID可以预防数据丢失,但并不能百分百保证数据不丢,所以在使用RAID的同时还是要备份重要的数据。

03. 实现磁盘阵列RAID的几种模式

一、RAID0条带卷,最少两块硬盘(单块也可以做)。读写性能好,但没有容错机制。坏一块硬盘数据全丢。

二、RAID1镜像源,只能两块硬盘,写入性能慢,读取性能一般、有容错机制,但磁盘有50%浪费。

三、RAID5校验卷,至少三块硬盘,只允许坏一块盘,有效空间1/3,读写速度稍快。坏掉一块硬盘后,读会慢。

四、RAID10,先做RAID1,在做RAID0,至少四块硬盘,读写很快,有容错机制,但磁盘有50%浪费。
五、RAID总结:
磁盘阵列RAID及逻辑卷LVM管理【显哥出品,必为精品】

冗余从好到坏:Raid1==>Raid10==>Raid5==>Raid0
性能从好到坏:Raid0==>Raid10==>Raid5==>Raid1
成本从低到高:Raid0==>Raid5==>Raid1==>Raid10

企业中的服务器如何选择Raid级别:根据数据的存储和访问的需求,去匹配对应的Raid级别。这句话适用于互联网的所有公司。

磁盘阵列RAID及逻辑卷LVM管理【显哥出品,必为精品】
磁盘阵列RAID及逻辑卷LVM管理【显哥出品,必为精品】

04. 磁盘阵列RAID创建的两种方式

1、软件RAID
通过系统功能或ID软件实现RAID,没有独立硬件和接口,需要占用一定的系统资源(CPU、硬盘接口速度),并且受操作系统稳定性影响;

2、硬件RAID(视频)
通过独立的ID硬件卡实现,有些主板集成ID硬件,有些需要购买独立的ID硬件卡,硬件RAID不需要占用其他硬件资源,稳定性和速度都比软件RAID要强

PS:实际生产环境中RAID通常是使用硬RAID方式。如果使用的是公用云,那么厂商会将该问题解决。

05. RAID硬盘失效处理–热备和热插拔

热备:HotSpare

定义:当冗余的RAID组中某个硬盘失效时,在不干扰当前RAID系统的正常使用的情况下,用RAID系统中另外一个正常的备用硬盘自动顶替失效硬盘,及时保证RAID系统的冗余性

全局式:备用硬盘为系统中所有的冗余RAID组共享

专用式:备用硬盘为系统中某一组冗余RAID组专用

热插拔:HotSwap

定义:在不影响系统正常运转的情况下,用正常的硬盘物理替换RAID系统中失效硬盘

关键在于热插拔时电子器件的保护机制

逻辑卷LVM管理

01. 什么是LVM?

LVM是Logical Volume Manager (逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制。又译为逻辑卷宗管理器、逻辑扇区管理器、逻辑磁盘管理器,是Linux核心所提供的逻辑卷管理(Logical volume management)功能。它在硬盘的分区之上,又创建一个逻辑层,以方便系统管理硬盘分区系统。
最先由IBM开发,在AIX系统上实现,OS/2 操作系统与 HP-UX也支持这个功能。在1998年,Heinz Mauelshagen 根据在 HP-UX 上的逻辑卷管理器,写作出第一个 Linux 版本的逻辑卷管理器。

02. LVM解决了什么问题

当我们刚开始安装Linux操作系统是遇到的一个常见的难以决定的问题就是如何正确地评估各分区大小,以分配合适的硬盘空间。
普通的磁盘分区好之后就无法改变其大小,而遇到出现某个分区空间耗尽时,解决的方法可以是符号链接,或者调整分区大小的工具,但这只是暂时解决方法,没有从根本上解决问题。
随着Linux的逻辑卷管理功能的出现,这些问题都迎刃而解,用户可以在无需停机的请款下可以方便的调整各个分区大小。

03. LVM架构图

磁盘阵列RAID及逻辑卷LVM管理【显哥出品,必为精品】

04. LVM基本概念

物理卷(PV):(physical volume),把常规的磁盘设备通过pvcreate命令对其进行初始化,形成了物理卷。其实就是硬盘或分区。(面粉)

卷组(VG):(volume group),把多个物理卷组成一个逻辑的整体,这样卷组的大小就是多个硬盘之和。或者理解就是由一个或多个PV组成的整体。(面团)

逻辑卷(LV):(logical volume),从卷组中划分需要的空间大小出来。用户仅需对其格式化然后即可挂载使用。从VG中切割出的空间用于创建文件系统。(切成馒头)

基本单元(PE):(physical extend),分配的逻辑大小的最小单元,默认为4MB的基本块。(假设分配100MB逻辑空间,则需要创建25个PE)

逻辑卷LVM实践

①、使用逻辑卷实战:

1)创建物理卷,将普通磁盘转换为物理卷。
2)创建卷组,将物理卷加入到卷组中。
3)在卷组中划分逻辑卷,然后挂载使用。

1. 准备物理磁盘
[root@lixian ~]# lsblk
sdb 8:16 0 20G 0 disk
sdc 8:32 0 20G 0 disk
2. 将磁盘转换为物理卷
yum install -y lvm2
pvcreate /dev/sdb
3. 将/dev/sdb物理卷加入卷组(资源池)–>名字lvm_test
vgcreate lvm_test /dev/sdb
vgs #检查卷组
4. 创建逻辑卷,分配名称,以及大小,指定卷组
选项:
-L #逻辑卷大小
-n #逻辑卷名字
lvcreate -L 100M -n lv1 lvm_test ##将lvm_test分配給lv1
5. 格式化逻辑卷
mkfs.xfs /dev/lvm_test/lv1
6. 挂载使用
mkdir /lv1
mount /dev/lvm_test/lv1 /lv1/

②、卷组管理,扩展卷组大小、删除卷组实战:

(1). 扩展卷组大小:
1.新硬盘加入pv
pvcreate /dev/sdc
2.先检查当前的vg卷组大小
[root@lixian ~]# vgs
VG #PV #LV #SN Attr VSize VFree
lvm_test 1 1 0 wz–n- 1020.00m 920.00m
3.使用vgextend扩展卷组
vgextend lvm_test /dev/sdc
4.再次检查,发现卷组已经扩大
[root@lixian ~]# vgs
VG #PV #LV #SN Attr VSize VFree
lvm_test 2 1 0 wz–n- 1.99g 1.89g

(2). 删除卷组:
移除/dev/sdb磁盘,建议先将sdb磁盘数据先迁移到sdc磁盘,然后在移除。(同一卷组的磁盘才可以进行在线迁移),(注意卷组的名称—)
1.检查当前逻辑卷VG中PV使用情况
[root@lixian ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sdb vg1 lvm2 a — 2.00g 1.76g
/dev/sdc vg1 lvm2 a — 2.00g 2.00g
2.pvmove在线数据迁移,将sdb的数据迁移至sdc
pvmove /dev/sdb
3.检查是否将sdb数据迁移至sdc
[root@lixian ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sdb vg1 lvm2 a — 2.00g 2.00g
/dev/sdc vg1 lvm2 a — 2.00g 1.76g
4.从卷组中移除sdb磁盘
vgreduce lvm_test /dev/sdb

(3). 逻辑卷管理,动态的调整逻辑卷大小
逻辑卷的扩展,是取决于vg卷中是否还有剩余的容量,注意扩展逻辑卷不能超过卷组VG的总大小
[root@lixian ~]# vgs
VG #PV #LV #SN Attr VSize VFree
datavg 1 1 0 wz–n- 1020.00m 920.00m
1.扩展lv逻辑卷,增加800M分配给逻辑卷 {注意: 800M +800M 不一样}
[root@lixian ~]# lvextend -L +800M /dev/lvm_test/lv1
#或者可以选择分配磁盘池中多少百分比给逻辑卷
[root@lixian ~]# lvextend -l +50%FREE /dev/lvm_test/lv1
2.扩展逻辑卷后需要更新fs文件系统
[root@lixian ~]# xfs_growfs /dev/lvm_testvg/lv1 #xfs文件格式扩容

缩小逻辑卷,不要去操作,因为线上在使用的磁盘真的敢操作吗?
删除逻辑卷,如果不想使用逻辑卷可以选择删除。
[root@lixian ~]# umount /dev/lvm_test/lv1
[root@lixian ~]# lvremove /dev/lvm_test/lv1


本站博主 , 版权所有丨如未注明 , 均为原创
转载请注明原文链接:磁盘阵列RAID及逻辑卷LVM管理【显哥出品,必为精品】
喜欢 (7)

您必须 登录 才能发表评论!

(3)个小伙伴在吐槽
  1. 哇,真的好棒,哦哦,好棒好棒
    匿名2020-01-04 14:38