raid配置与实战

2024-05-30 03:52
文章标签 配置 实战 raid

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

一、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配置与实战的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

win10安装及配置Gradle全过程

《win10安装及配置Gradle全过程》本文详细介绍了Gradle的下载、安装、环境变量配置以及如何修改本地仓库位置,通过这些步骤,用户可以成功安装并配置Gradle,以便进行项目构建... 目录一、Gradle下载1.1、Gradle下载地址1.2、Gradle下载步骤二、Gradle安装步骤2.1、安

MySQL数据库双机热备的配置方法详解

《MySQL数据库双机热备的配置方法详解》在企业级应用中,数据库的高可用性和数据的安全性是至关重要的,MySQL作为最流行的开源关系型数据库管理系统之一,提供了多种方式来实现高可用性,其中双机热备(M... 目录1. 环境准备1.1 安装mysql1.2 配置MySQL1.2.1 主服务器配置1.2.2 从

Python版本信息获取方法详解与实战

《Python版本信息获取方法详解与实战》在Python开发中,获取Python版本号是调试、兼容性检查和版本控制的重要基础操作,本文详细介绍了如何使用sys和platform模块获取Python的主... 目录1. python版本号获取基础2. 使用sys模块获取版本信息2.1 sys模块概述2.1.1

Linux云服务器手动配置DNS的方法步骤

《Linux云服务器手动配置DNS的方法步骤》在Linux云服务器上手动配置DNS(域名系统)是确保服务器能够正常解析域名的重要步骤,以下是详细的配置方法,包括系统文件的修改和常见问题的解决方案,需要... 目录1. 为什么需要手动配置 DNS?2. 手动配置 DNS 的方法方法 1:修改 /etc/res

mysql8.0.43使用InnoDB Cluster配置主从复制

《mysql8.0.43使用InnoDBCluster配置主从复制》本文主要介绍了mysql8.0.43使用InnoDBCluster配置主从复制,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录1、配置Hosts解析(所有服务器都要执行)2、安装mysql shell(所有服务器都要执行)3、

Python爬虫HTTPS使用requests,httpx,aiohttp实战中的证书异步等问题

《Python爬虫HTTPS使用requests,httpx,aiohttp实战中的证书异步等问题》在爬虫工程里,“HTTPS”是绕不开的话题,HTTPS为传输加密提供保护,同时也给爬虫带来证书校验、... 目录一、核心问题与优先级检查(先问三件事)二、基础示例:requests 与证书处理三、高并发选型:

java程序远程debug原理与配置全过程

《java程序远程debug原理与配置全过程》文章介绍了Java远程调试的JPDA体系,包含JVMTI监控JVM、JDWP传输调试命令、JDI提供调试接口,通过-Xdebug、-Xrunjdwp参数配... 目录背景组成模块间联系IBM对三个模块的详细介绍编程使用总结背景日常工作中,每个程序员都会遇到bu

JDK8(Java Development kit)的安装与配置全过程

《JDK8(JavaDevelopmentkit)的安装与配置全过程》文章简要介绍了Java的核心特点(如跨平台、JVM机制)及JDK/JRE的区别,重点讲解了如何通过配置环境变量(PATH和JA... 目录Java特点JDKJREJDK的下载,安装配置环境变量总结Java特点说起 Java,大家肯定都

Oracle Scheduler任务故障诊断方法实战指南

《OracleScheduler任务故障诊断方法实战指南》Oracle数据库作为企业级应用中最常用的关系型数据库管理系统之一,偶尔会遇到各种故障和问题,:本文主要介绍OracleSchedul... 目录前言一、故障场景:当定时任务突然“消失”二、基础环境诊断:搭建“全局视角”1. 数据库实例与PDB状态2

linux配置podman阿里云容器镜像加速器详解

《linux配置podman阿里云容器镜像加速器详解》本文指导如何配置Podman使用阿里云容器镜像加速器:登录阿里云获取专属加速地址,修改Podman配置文件并移除https://前缀,最后拉取镜像... 目录1.下载podman2.获取阿里云个人容器镜像加速器地址3.更改podman配置文件4.使用po