作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。
在Linux的服务器领域,我们能接触的到硬件其实挺多的,但是在这些硬件我们根据我们的需要去使用的时候,一般会涉及到以下几个概念,IPMI,BIOS,RAID,在Linux进阶里面,我们就会分三章来介绍这3个概念。
Linux硬件-IPMI
Linux硬件-BIOS
Linux硬件-RAID(本章节)
讲RAID之前,我们先思考一个问题,我们如果购买一个盘,这个盘坏了,我们数据丢了怎么办?虽然这个问题在个人领域,普通人可能一辈子也无法遇到。但是在服务器领域,尤其是超大规模,任何小概率事件,都会经常发生。这也是个人理解RAID的来源。
RAID(Redundant Array of Independent Disks,独立磁盘冗余阵列)是一种数据存储技术,旨在通过将多个硬盘驱动器组合起来,以提高存储系统的性能、容量或可靠性。RAID 技术最初由加利福尼亚大学伯克利分校的研究人员提出,并在1980年代初得到推广和发展。
主要的 RAID 级别
-
RAID 0:条带化(Striping)
-
将数据块分散存储在多个硬盘上,提高了读写速度和整体性能。
-
不提供冗余备份,一台磁盘损坏会导致数据丢失。
-
-
RAID 1:镜像(Mirroring)
-
将相同的数据同时写入两个或多个硬盘,提供了数据冗余,增强了数据安全性和可靠性。
-
读性能可以优于单个硬盘,但写性能可能有所降低,因为数据要写入多个磁盘。
-
-
RAID 5:带分布式奇偶校验(Striping with Distributed Parity)
-
将数据和奇偶校验信息分散存储在多个硬盘上,提供了性能和容错性的平衡。
-
可以容忍一块硬盘的故障,同时不会损失数据。最低要求3块硬盘。
-
-
RAID 6:双分布式奇偶校验(Striping with Double Distributed Parity)
-
类似 RAID 5,但提供了更高级别的容错能力。
-
可以容忍两块硬盘的故障,在大容量硬盘的使用场景中更为常见。
-
-
RAID 10:RAID 1+0(Mirrored Striping)
-
将多组 RAID 1 镜像组成 RAID 0 条带化阵列,结合了 RAID 0 的性能和 RAID 1 的数据冗余。
-
提供了很高的读写性能和较高的数据保护能力,但需要至少四块硬盘。
-
RAID 的优点
-
提高性能:通过条带化技术,在多个磁盘上并行读写数据,显著提高了数据访问速度。
-
提供冗余:通过镜像或分布式奇偶校验技术,提供了数据的备份和容错能力,一定程度上提高了系统的可靠性和稳定性。
-
灵活性:可以根据不同的应用需求选择合适的 RAID 级别,平衡性能、容量和可靠性。
RAID 的应用场景
-
数据库服务器、文件服务器和企业级应用,需要高性能和数据冗余的环境。
-
大数据处理和存储,需要高速数据读写和大容量存储的场景。
-
要求数据备份和容错能力的关键业务应用,如金融交易系统和医疗数据存储。
总之,RAID 技术通过不同的实现级别,在性能、容量和可靠性之间找到了平衡点,是现代数据存储系统中常见和重要的技术之一。
总结
1.其实在分布式存储诞生以后,在大规模集群里面RAID应用已经比较少,主要通过软件多副本方式来保证的高可靠性。并且由于Kubernetes的应用,对单机的可靠性要求也大大降低。
2.在部分采用的RAID的业务里面,主要也是以系统盘为主。
3.RAID的配置有的需要通过bios来完成,也有的可以通过ipmi来完成。
4.目前在市面上的NAS产品,包括个人和企业在很大程度上也是依靠RAID来保证高可用的。
5.RAID是分硬件和软件两种的,下一章我们再讲讲具体的。
RAID级别 | 最低几块盘 | 磁盘容量 | 是否允许坏盘 |
---|---|---|---|
RAID0 | 2 | 2块磁盘相加 | 不允许 |
RAID1 | 2 | 1块硬盘 | 可以坏1块 |
RAID5 | 3 | n-1块容量相加 | 可以坏1块 |
RAID10 | 4 | 2块磁盘 | 可以坏2块 |
关注微信公众号《运维小路》获取更多内容。