0
点赞
收藏
分享

微信扫一扫

RAID和LVM

一、什么是RAID

RAID​:Redundant Arrays of Inexpensive(Independent) Disks 廉价(独立)磁盘冗余阵列

1988年由加利福尼亚大学伯克利分校(University of California-Berkeley) “A Case for Redundant

Arrays of Inexpensive Disks”,多个磁盘合成一个“阵列”来提供更好的性能、冗余,或者两者都提供

RAID功能:

  • 提高IO能力,磁盘并行读写
  • 提高耐用性,磁盘冗余算法来实现

RAID实现得方式:

  • 外接式磁盘阵列:通过扩展卡提供适配能力
  • 内接式RAID:主板集成RAID控制器,安装OS前在BIOS里配置
  • 软件RAID:通过OS实现,比如:群晖的NAS

RAID级别:

  • 级别:多块磁盘组织在一起的工作方式有所不同
  • RAID-0:条带卷,strip
  • RAID-1:镜像卷,mirror
  • RAID-2
  • ..
  • RAID-5
  • RAID-6
  • RAID-10
  • RAID-01
  • RAID级别

1、RAID 0


N块硬盘虚拟一个逻辑硬盘。数据分别平均存储在N个硬盘中

chunk 单位,读写数据

读、写性能提升

可用空间:N*min(S1,S2,...)

无容错能力

最少磁盘数:2, 2+

2、RAID 1

镜像,两块硬盘为备份关系,同时增加或删除,利用率为百分之50

读性能提升、写性能略有下降

可用空间:1*min(S1,S2,...)

有冗余能力

最少磁盘数:2, 2N

3、RAID4

至少3块硬盘才可以实现,数据存放在第一和第二块硬盘,第三块硬盘为校验位,若第一块硬盘损坏,可以根据校验位(校验位减去第二块硬盘数据),继续完整得访问数据。

多块数据盘异或运算值存于专用校验盘 磁盘利用率 (N-1)/N

有冗余能力


4、RAID5

每个硬盘都放校验位和数据。


读、写性能提升,。

可用空间:(N-1)\N

有容错能力:允许最多1块磁盘损坏

最少磁盘数:3, 3+

5、RAID6

存放两个校验位

读、写性能提升

可用空间:(N-2)/N

有容错能力:允许最多2块磁盘损坏

最少磁盘数:4, 4+

6、RAID 10

读、写性能提升

可用空间:N/2

有容错能力:每组镜像最多只能坏一块

最少磁盘数:4, 4+

7、RAID-01

多块磁盘先实现RAID0,再组合成RAID1

二、逻辑卷管理器LVM

LVM: Logical Volume Manager 可以允许对卷进行方便操作的抽象层,包括重新设定文件系统的大小,允许在多个物理设备间重新组织文件系统

通过交换PE来进行资料的转换,将原来LV内的PE转移到其他的设备中以降低LV的容量,或将其他设备中的PE加到LV中以加大容量

实现过程:

  • 将设备指定为物理卷
  • 用一个或者多个物理卷来创建一个卷组,物理卷是用固定大小的物理区域(Physical ExtentPE)来定义的
  • 在物理卷上创建的逻辑卷, 是由物理区域(PE)组成
  • 可以在逻辑卷上创建文件系统并挂载

第一个逻辑卷对应设备名:/dev/dm-#

dm: device mapper,将一个或多个底层块设备组织成一个逻辑设备的模块

软链接:

/dev/1mapper/VG_NAME-LV_NAME

/dev/VG_NAME/LV_NAME

三、实现逻辑卷步骤

1、安装包

yum -y install lvm2

2、把物理磁盘或分区变成物理卷

创建pv: pvcreate /dev/DEVICE

删除pv : pvremoce /dev/DEVICE 

查看PV信息: pvdisplay (更详细)或者pvs

3、创建卷组

创建卷组:vgcreate    “卷组名字" /dev/DEVICE  /dev/DEVICE

-s : 指定PE大小

查看卷组信息:vgs和vgdisplay


删除卷组:

  • 先做pvmove
  • 再做vgremove

4、创建逻辑卷

显示逻辑卷:lvs 和lvdisplay

创建逻辑卷:

lvcreate -L 【指定逻辑卷的大小】 -n 【逻辑卷的名字】  【卷组名】

 -l : 指定的为PE的个数

5、创建文件系统

  mkfs -t ext4 /dev/mapper/vg_mysql-lv_date

6、挂载

使用bikid 查看逻辑卷uuid,写入/etc/fstab

[root@centos8 ~]#blkid /dev/mapper/vg_mysql-lv_date

/dev/mapper/vg_mysql-lv_date: UUID="bc3726df-244e-496d-b925-10fe620ba689" BLOCK_SIZE="4096" TYPE="ext4"

UUID=bc3726df-244e-496d-b925-10fe620ba689  /mysql/data  ext4 defaults 0 0

7、在线扩展逻辑卷

lvextend -L [+]#[mMgGtT] /dev/VG_NAME/LV_NAME

加 上 -r 选项后不同同步文件系统

#同步文件系统:针对ext

resize2fs /dev/VG_NAME/LV_NAME​

  • [root@centos8 /]#xfs_growfs /mysql/data/




#同步文件系统针对xfs

xfs_growfs MOUNTPOINT后面跟的是挂载点的文件夹

lvresize -r -l +100%FREE /dev/VG_NAME/LV_NAME

8、在线扩展逻辑卷组

先将物理磁盘使用PV变成物理卷


vgextend ​  “卷组名字" /dev/DEVICE  













举报

相关推荐

0 条评论