raid配置与实战10

2024-05-30 21:04
文章标签 配置 实战 raid

本文主要是介绍raid配置与实战10,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、raid理论

1、raid概述

raid(磁盘阵列):是用不同的硬盘分区,组成一个逻辑上的硬盘,高可用(冗余)。

2、raid级别

2.1、raid0条带化存储

  • 数据分散在多个物理磁盘上的存储方式,利用多个磁盘并行读取和写入,存储性能和读写性能是最好的。
  • raid0使用条带化存储,没有冗余能力,坏一块盘数据就会丢失。
  • 使用场景:高吞吐和低延迟的应用场景。视频 大数据处理。
  • 最少要一块硬盘分区。
  • 硬盘利用率是100%。

2.2、raid1镜像存储

  • 两两复制,数据会存储在所有的硬盘中。
  • raid1需要的磁盘数N(偶数)
  • raid1可以提高读的性能,写性能相对较低,数据在每个磁盘都有备份.
  • raid1可以提供冗余。
  • raid利用率50%。

2.3、raid5条带化存储

  • 数据是分散存储,根据校验机制循环均衡的存储。
  • n>=3,有冗余,可以坏一块盘,如果有热备份,可以再坏一块盘。
  • 读性能很好,写性能现对较差。
  • 磁盘利用率 n-1/3 raid5运用场景最多。

2.4、raid6

  • 最少需要4块硬盘 n>=4。
  • 磁盘利用率n-2/n。
  • 有冗余,奇偶校验,每个盘上的数据一致,循环按照奇数和偶数俩把数据写入磁盘。
  • 最多可以坏2个盘。
  • 读性能和raid5差不多,比raid1低很多,写性能最差的。
  • raid6的可靠性是最高的,最可靠的raid级别,金融,医疗,法律,银行均用。
  • 对数据的完整性和可靠性要求很高,选择raid6。

2.5、raid10先做镜像 在做条带

  • 最少需要4块,盘数n为偶数 n>=4,先做镜像在做条带。
  • 有冗余,可以坏2块(一组坏一块)每个两两复制的硬盘当中可以坏一个。
  • 利用率n/2 50%。
  • 读写性能高,读和raid0差不多 稍低一些 写性能和raid1几乎一至, 稍低一些。

3、总结

raid级别使用硬盘数量磁盘利用率冗余能力读写性能
raid0N100%读写性能最好
raid1N(偶数)50%坏一块读性能好,写相对较差
raid5N>=3n-1/n坏一块读性能好,写性能一般
raid6N>=4n-2/n坏两块读性能好,写性能最差
raid10
N>=4 N(偶数)
50%每个组当中可以各自坏一块读性能好,写性能一般

在有四个硬盘,可以按照实际需求进行选择,在企业当中,用最多的是raid5。

  1. raid0 读写性能最好,利用率100%,但没有冗余能力
  2. raid1读性能很好,写性能相对差,利用率50%,有冗余能力
  3. raid5读性能很好,写性能一般,利用率大于50%,有冗余能力,性价比最高
  4. raid6读性能好,写性能最差,利用率大概50%,有冗余能力
  5. raid10读写性能都很好,利用率50%,有冗余能力,但造价高

补充:

热备份:当阵列中有一块硬盘坏了,热备份盘可以随时顶替,相当于磁盘的最后一次保险。

工作原理:热备份相当于给raid又做了一个备份,raid当中坏了一块硬盘,热备份在顶替过程中利用校验的算法,把阵列当中的数据同步过来,然后再顶替坏掉的硬盘,在替换过程中,阵列不可使用的,不能读写的,顶替完成之后,raid恢复正常

二、实战

添加5个硬盘,每个硬盘分1个区,每个区10G

检查mdadm版本,没有需要下载

1、raid10

检查是否已经被raid使用

[root@localhost ~]# mdadm -E /dev/sd[b-e]1

 创建raid10

[root@localhost ~]# mdadm -C -v /dev/md10 -l10 -n4 -x1 /dev/sd{b,c,d,e,f}1

-C:创建raid

-v:显示创建过程中的详细信息

/dev/md5:raid5

-l:指定raid的级别raid5

-n:指多少块硬盘

/dev/sd[b-d]1:硬盘分区

-x:热备份几块

查看raid10

[root@localhost ~]# mdadm -D /dev/md10

创建xfs文件管理,挂载就不在演示,类似于lvm 

模拟破坏其中的一块盘,并查看效果,热备份盘替换,可冗余

 

模拟破坏A,B中 各一块硬盘,并查看效果,可冗余

总结:我们此次做的是软raid10,存在一些弊端,实际在我们生产中,不会存在连续损坏3块硬盘以上的情况,当最后有两块硬盘中仍可以冗余,但仅剩一块工作时,不可冗余。 

2、raid6与lvm结合

创建lvm

 

创建raid6有1个热备份,并查看详细信息 

创建文件系统 

 挂载并查看

  1. 破坏第一块盘,并查看,状态State : clean, degraded, recovering 备份盘顶替被损坏盘的位置,服务器可冗余

查看过程备份盘奇偶校验 

2、进一步破坏第二个盘 

 

查看结果,状态为 State : clean, degraded ,服务器可冗余 

3、破坏第三个盘 

查看结果,状态为   State : clean, degraded ,服务器可冗余 

 4、破坏第四个盘

 查看状态State : clean, FAILED ,服务器崩溃,无法冗余

总结:raid6在破坏到仅剩一个硬盘时,服务器崩溃无法冗余。

这篇关于raid配置与实战10的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1016877

相关文章

SpringBoot路径映射配置的实现步骤

《SpringBoot路径映射配置的实现步骤》本文介绍了如何在SpringBoot项目中配置路径映射,使得除static目录外的资源可被访问,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一... 目录SpringBoot路径映射补:springboot 配置虚拟路径映射 @RequestMapp

从原理到实战解析Java Stream 的并行流性能优化

《从原理到实战解析JavaStream的并行流性能优化》本文给大家介绍JavaStream的并行流性能优化:从原理到实战的全攻略,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的... 目录一、并行流的核心原理与适用场景二、性能优化的核心策略1. 合理设置并行度:打破默认阈值2. 避免装箱

Maven中生命周期深度解析与实战指南

《Maven中生命周期深度解析与实战指南》这篇文章主要为大家详细介绍了Maven生命周期实战指南,包含核心概念、阶段详解、SpringBoot特化场景及企业级实践建议,希望对大家有一定的帮助... 目录一、Maven 生命周期哲学二、default生命周期核心阶段详解(高频使用)三、clean生命周期核心阶

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模

Java 正则表达式的使用实战案例

《Java正则表达式的使用实战案例》本文详细介绍了Java正则表达式的使用方法,涵盖语法细节、核心类方法、高级特性及实战案例,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录一、正则表达式语法详解1. 基础字符匹配2. 字符类([]定义)3. 量词(控制匹配次数)4. 边

Java Scanner类解析与实战教程

《JavaScanner类解析与实战教程》JavaScanner类(java.util包)是文本输入解析工具,支持基本类型和字符串读取,基于Readable接口与正则分隔符实现,适用于控制台、文件输... 目录一、核心设计与工作原理1.底层依赖2.解析机制A.核心逻辑基于分隔符(delimiter)和模式匹

Python内存优化的实战技巧分享

《Python内存优化的实战技巧分享》Python作为一门解释型语言,虽然在开发效率上有着显著优势,但在执行效率方面往往被诟病,然而,通过合理的内存优化策略,我们可以让Python程序的运行速度提升3... 目录前言python内存管理机制引用计数机制垃圾回收机制内存泄漏的常见原因1. 循环引用2. 全局变

Nginx中配置使用非默认80端口进行服务的完整指南

《Nginx中配置使用非默认80端口进行服务的完整指南》在实际生产环境中,我们经常需要将Nginx配置在其他端口上运行,本文将详细介绍如何在Nginx中配置使用非默认端口进行服务,希望对大家有所帮助... 目录一、为什么需要使用非默认端口二、配置Nginx使用非默认端口的基本方法2.1 修改listen指令

PostgreSQL简介及实战应用

《PostgreSQL简介及实战应用》PostgreSQL是一种功能强大的开源关系型数据库管理系统,以其稳定性、高性能、扩展性和复杂查询能力在众多项目中得到广泛应用,本文将从基础概念讲起,逐步深入到高... 目录前言1. PostgreSQL基础1.1 PostgreSQL简介1.2 基础语法1.3 数据库

Python WebSockets 库从基础到实战使用举例

《PythonWebSockets库从基础到实战使用举例》WebSocket是一种全双工、持久化的网络通信协议,适用于需要低延迟的应用,如实时聊天、股票行情推送、在线协作、多人游戏等,本文给大家介... 目录1. 引言2. 为什么使用 WebSocket?3. 安装 WebSockets 库4. 使用 We