什么是raid 磁盘冗余阵列
这是由多块独立磁盘(多为硬盘)组合的一个超大容量磁盘组。
大白话的解释 磁盘冗余阵列,就是将很多块硬盘组合成一个整体,不同的RAID级别,可以实现不同的功能 如加速数据读写、如实现数据备份。
raid技术的作用
- 提高IO能力,磁盘并行读写 - 提高耐用性,磁盘冗余算法来实现 - 具备冗余功能,节约成本
raid级别的作用、以及区别
- raid0 最小磁盘数:2 优点:性能提升(写入和读取速度)。数据分别存入两个不同的磁盘 缺点:没有数据冗余。数据不安全 业务用途:直播,IPTV,VOD边缘服务器 - raid1 最小磁盘数:2 优点:容错和简单的数据恢复。提高了读取性能。实现了数据的备份 缺点:可用容量较低。写入速度变慢。 业务用途:标准应用服务器,其中数据冗余和可用性很重要。 - Raid5 最小磁盘数:3 优点:容错和IO性能提升(低于RAID 0) 缺点:由于奇偶校验开销导致服务器执行大量写操作,性能降低。 理想用途:文件存储服务器和应用服务器。 - Raid6 最小磁盘数:4 优点:比RAID 5更高的冗余。提高了读取性能。 缺点:由于奇偶校验开销,服务器执行大量写操作会降低性能。 理想用途:大型文件存储服务器和应用服务器。 - raid10 最小磁盘数:4 优点:性能非常高。容错。 缺点:可用容量较低/成本较高。有限的可扩展性 理想用途:高度利用的数据库服务器/服务器执行大量写入操作 - RAID级别的区别主要是读写速度的不同,以及容错性能和搭建成本不同
raid0
至少需要两块磁盘 数据==条带化==分布到磁盘,==高的读写性能==,100%==高存储空间利用率== 数据==没有冗余策略==,一块磁盘故障,数据将无法恢复 应用场景: 对性能要求高但对数据安全性和可靠性要求不高的场景,比如音频、视频等的存储
raid1
至少需要2块磁盘 数据==镜像备份==写到磁盘上(工作盘和镜像盘),==可靠性高==,磁盘利用率为50% 读性能可以,但写性能不佳,写入数据要同步,因此速度很慢。 一块磁盘故障,不会影响数据的读写,因为是镜像盘,冗余性好,只要有一块是好的,数据还是玩转的。 RAID 1应用场景: 对数据安全可靠要求较高的场景,比如邮件系统、交易系统等。
raid10
RAID10特点: RAID10是raid1+raid0的组合 至少需要4块磁盘 两块硬盘为一组先做raid1,再将做好raid1的两组做raid0 兼顾==数据的冗余==(raid1镜像)和==读写性能==(raid0数据条带化) 磁盘利用率为50%,成本较高 只要坏的不是同一个组中,所有的硬盘,就算坏掉一半硬盘都不会丢数据。 因此raid10是最实用的方案。
总结raid级别
硬raid、软raid区别
硬RAID使用磁盘阵列卡实现RAID功能,更稳定,不依赖于操作系统。 软RAID使用软件模拟RAID功能,因为功能实现依赖软件以及操作系统,所以性能不如硬件RAID稳定
软Raid 10实战
(1)环境准备
添加4块硬盘,搭建raid 10磁盘冗余阵列。
[root@mini ~]#lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 19G 0 part ├─centos-root 253:0 0 18G 0 lvm / └─centos-swap 253:1 0 1G 0 lvm [SWAP] sdd 8:48 0 10G 0 disk sde 8:64 0 10G 0 disk sdf 8:80 0 10G 0 disk sdg 8:96 0 10G 0 disk sr0 11:0 1 4.4G 0 rom # sdd sde sdf sdg为新添加磁盘
(2)安装mdadm(实现软RAID功能)
mdadm命令用于建设,管理和监控软件RAID阵列
[root@lamp-241 ~]# yum install mdadm -y
(3)创建RAID10磁盘阵列
# 1. 命令说明 mdadm -Cv /dev/md0 -a yes -n 4 -l 10 /dev/sdb /dev/sdc /dev/sdd /dev/sde -C表示创建RAID阵列卡 -v显示创建过程 /dev/md0 指定raid阵列的名字 -a yes自动创建阵列设备文件 -n 4参数表示用4块盘部署阵列 -l 10 代表指定创建raid 10级别 最后跟着四块磁盘设备名 # 2. 创建RAID10 [root@mini ~]#mdadm -Cv /dev/md0 -a yes -n 4 -l 10 /dev/sdd /dev/sde /dev/sdf /dev/sdg mdadm: layout defaults to n2 mdadm: layout defaults to n2 mdadm: chunk size defaults to 512K mdadm: size set to 10476544K mdadm: Defaulting to version 1.2 metadata mdadm: array /dev/md0 started.
(4)查看RAID10信息
[root@mini ~]#fdisk -l /dev/md0 Disk /dev/md0: 21.5 GB, 21455962112 bytes, 41906176 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 524288 bytes / 1048576 bytes # 4块盘分别为10G,总结40G,因RAID10只能利用磁盘50%的空间,所以此处显示为21.5GB空间
(5)创建分区及文件系统
这里就不分区了 [root@lamp-241 ~]# mkfs.xfs /dev/md0 meta-data=/dev/md0 isize=512 agcount=16, agsize=654720 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0, sparse=0 data = bsize=4096 blocks=10475520, imaxpct=25 = sunit=128 swidth=256 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal log bsize=4096 blocks=5120, version=2 = sectsz=512 sunit=8 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0
(6)挂载分区并写入数据
mount /dev/md0 /md0_disk/
查看挂载后的磁盘使用情况 df -h
写入数据
[root@lamp-241 ~]# ls /yuchao-linux/ [root@lamp-241 ~]# [root@lamp-241 ~]# touch /yuchao-linux/超哥带你学linux.txt [root@lamp-241 ~]# [root@lamp-241 ~]# ls /yuchao-linux/ 超哥带你学linux.txt
查看raid 10信息
[root@lamp-241 ~]# mdadm -D /dev/md0 /dev/md0: Version : 1.2 Creation Time : Thu Mar 3 0420 2022 Raid Level : raid10 Array Size : 41908224 (39.97 GiB 42.91 GB) Used Dev Size : 20954112 (19.98 GiB 21.46 GB) Raid Devices : 4 Total Devices : 4 Persistence : Superblock is persistent Update Time : Thu Mar 3 0412 2022 State : clean Active Devices : 4 Working Devices : 4 Failed Devices : 0 Spare Devices : 0 Layout : near=2 Chunk Size : 512K Consistency Policy : resync Name : lamp-241:0 (local to host lamp-241) UUID : 8b05fda8d639157c:bf00d883 Events : 21 Number Major Minor RaidDevice State 0 8 16 0 active sync set-A /dev/sdb 1 8 32 1 active sync set-B /dev/sdc 2 8 48 2 active sync set-A /dev/sdd 3 8 64 3 active sync set-B /dev/sde [root@lamp-241 ~]#
加入开机自动挂载
[root@lamp-241 ~]# tail -1 /etc/fstab /dev/md0 /yuchao-linux xfs defaults 0 0
剔除一块硬盘
[root@lamp-241 ~]# mdadm /dev/md0 -f /dev/sdd mdadm: set /dev/sdd faulty in /dev/md0
检查raid 10信息
[root@lamp-241 ~]# mdadm /dev/md0 -f /dev/sdd mdadm: set /dev/sdd faulty in /dev/md0 [root@lamp-241 ~]# mdadm -D /dev/md0 /dev/md0: Version : 1.2 Creation Time : Thu Mar 3 0420 2022 Raid Level : raid10 Array Size : 41908224 (39.97 GiB 42.91 GB) Used Dev Size : 20954112 (19.98 GiB 21.46 GB) Raid Devices : 4 Total Devices : 4 Persistence : Superblock is persistent Update Time : Thu Mar 3 0433 2022 State : clean, degraded Active Devices : 3 Working Devices : 3 Failed Devices : 1 Spare Devices : 0 Layout : near=2 Chunk Size : 512K Consistency Policy : resync Name : lamp-241:0 (local to host lamp-241) UUID : 8b05fda8d639157c:bf00d883 Events : 23 可以看到/dev/sdd硬盘被移除了,faulty翻译是有故障的 Number Major Minor RaidDevice State 0 8 16 0 active sync set-A /dev/sdb 1 8 32 1 active sync set-B /dev/sdc - 0 0 2 removed 3 8 64 3 active sync set-B /dev/sde 2 8 48 - faulty /dev/sdd
不影响raid 10的使用
[root@lamp-241 ~]# touch /yuchao-linux/天气确实不错.txt [root@lamp-241 ~]# [root@lamp-241 ~]# ls /yuchao-linux/ 天气确实不错.txt 超哥带你学linux.txt
重新加入/dev/sdd硬盘
RAID10磁盘阵列,挂掉一块硬盘并不影响使用,只需要购买新的设备,替换损坏的磁盘即可
1.先取消RAID10阵列的挂载,注意必须没有人在使用挂载的设备 [root@lamp-241 ~]# umount /dev/md0 2.重启机器 reboot 3.重新添加新的磁盘加入raid 10 [root@lamp-241 ~]# mdadm /dev/md0 -a /dev/sdd mdadm: added /dev/sdd [root@lamp-241 ~]# [root@lamp-241 ~]# [root@lamp-241 ~]# mdadm -D /dev/md0 /dev/md0: Version : 1.2 Creation Time : Thu Mar 3 0420 2022 Raid Level : raid10 Array Size : 41908224 (39.97 GiB 42.91 GB) Used Dev Size : 20954112 (19.98 GiB 21.46 GB) Raid Devices : 4 Total Devices : 4 Persistence : Superblock is persistent Update Time : Thu Mar 3 0407 2022 State : clean, degraded, recovering Active Devices : 3 Working Devices : 4 Failed Devices : 0 Spare Devices : 1 Layout : near=2 Chunk Size : 512K Consistency Policy : resync Rebuild Status : 6% complete # 默认会有一个修复的过程,这里是进度条 Name : lamp-241:0 (local to host lamp-241) UUID : 8b05fda8d639157c:bf00d883 Events : 38 Number Major Minor RaidDevice State 0 8 16 0 active sync set-A /dev/sdb 1 8 32 1 active sync set-B /dev/sdc 4 8 48 2 spare rebuilding /dev/sdd 3 8 64 3 active sync set-B /dev/sde [root@lamp-241 ~]#
最终修复完毕
[root@lamp-241 ~]# mdadm -D /dev/md0 /dev/md0: Version : 1.2 Creation Time : Thu Mar 3 0420 2022 Raid Level : raid10 Array Size : 41908224 (39.97 GiB 42.91 GB) Used Dev Size : 20954112 (19.98 GiB 21.46 GB) Raid Devices : 4 Total Devices : 4 Persistence : Superblock is persistent Update Time : Thu Mar 3 0445 2022 State : clean Active Devices : 4 Working Devices : 4 Failed Devices : 0 Spare Devices : 0 Layout : near=2 Chunk Size : 512K Consistency Policy : resync Name : lamp-241:0 (local to host lamp-241) UUID : 8b05fda8d639157c:bf00d883 Events : 54 Number Major Minor RaidDevice State 0 8 16 0 active sync set-A /dev/sdb 1 8 32 1 active sync set-B /dev/sdc 4 8 48 2 active sync set-A /dev/sdd 3 8 64 3 active sync set-B /dev/sde [root@lamp-241 ~]#
删除软件raid
1.卸载磁盘 [root@lamp-241 ~]# umount /dev/md0 2.停止raid服务 [root@lamp-241 ~]# mdadm -S /dev/md0 mdadm: stopped /dev/md0 3.卸载raid中所有硬盘 [root@lamp-241 ~]# [root@lamp-241 ~]# mdadm --misc --zero-superblock /dev/sdb [root@lamp-241 ~]# mdadm --misc --zero-superblock /dev/sdc [root@lamp-241 ~]# mdadm --misc --zero-superblock /dev/sdd [root@lamp-241 ~]# mdadm --misc --zero-superblock /dev/sde 4.删除raid配置文件 rm -f /etc/mdadm.conf 5.删除开机自动挂载配置 修改/etc/fstab /dev/md0 /yuchao-linux xfs defaults 0 0 #删除 没弄开机自启就不用弄
或者在可以创建分区,创建文件系统
链接:https://www.cnblogs.com/btcm409181423/p/18008555
-
冗余
+关注
关注
1文章
112浏览量
20316 -
RAID
+关注
关注
0文章
279浏览量
35222 -
磁盘
+关注
关注
1文章
380浏览量
25308
原文标题:raid 磁盘冗余阵列
文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论