服务器硬件及RAID配置

目录

一、RAID磁盘阵列

1.概念

2.RAID 0

 3.RAID 1

 4.RAID 5

 5.RAID 6

6.RAID 1+0 

二、阵列卡

 1.简介

2.缓存 

三、创建

 1.创建RAID 0

2.创建RAID 1

3.创建RAID 5

4.创建RAID 10

四、模拟故障


一、RAID磁盘阵列

1.概念

(1)是Redundant Array of Independent Disks的缩写,中文简称为独立冗余磁盘阵列
(2)把多块独立的物理硬盘按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比           单个硬盘更高的存储性能和提供数据备份技术
(3)组成磁盘阵列的不同方式称为RAID级别(RAID Levels)
(4)常用的RAID级别
         RAID0,RAID1,RAID5,RAID6,RAID1+0等

2.RAID 0

(1)RAID 0连续以位或字节为单位分割数据,并行读/写于多个磁盘上,因此具有很高的数           据传输率,但它没有数据几余
(2)RAID 0只是单纯地提高性能,并没有为数据的可靠性提供保证,而且其中的一个磁盘             失效将影响到所有数据
(3)RAID 0不能应用于数据安全性要求高的场合

 N块硬盘并行组合成一个新的逻辑盘

 3.RAID 1

(1)通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据
(2)当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1可以提高读取性能
(3)RAID 1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个             磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据

 N(偶数)块硬盘组合成一组镜像,N/2容量

 4.RAID 5

(1)N(N>=3)块盘组成阵列,一份数据产生N-1个条带,同时还有1份校验数据,共N份数据           在N块盘上循环均衡存储
(2)N块盘同时读写,读性能很高,但由于有校验机制的问题,写性能相对不高
(3)(N-1)/N磁盘利用率
(4)可靠性高,允许坏1块盘,不影响所有数据

 5.RAID 6

(1)N(N>=4)块盘组成阵列,(N-2)/N磁盘利用率
(2)与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块
(3)两个独立的奇偶系统使用不同的算法,即使两块磁盘同时失效也不会影响数据的使用
(4)相对于RAID 5有更大的“写损失”,因此写性能较差

6.RAID 1+0 

(1)N(偶数,N>=4)块盘两两镜像后,再组合成一个RAID 0
(2)N/2磁盘利用率
(3)N/2块盘同时写入,N块盘同时读取
(4)性能高,可靠性高

二、阵列卡

 1.简介

(1)阵列卡是用来实现RAID功能的板卡
(2)通常是由I/O处理器、硬盘控制器、硬盘连接器和缓存等一系列组件构成的
(3)不同的RAID卡支持的RAID功能不同
         例如支持RAID0、RAID1、RAID5、RAID10等
(4)RAID卡的接口类型
         IDE接口、SCSI接口、SATA接口和SAS接口

2.缓存 

(1)缓存(Cache)是RAID卡与外部总线交换数据的场所,RAID卡先将数据传送到缓存,再           由缓存和外边数据总线交换数据
(2)缓存的大小与速度是直接关系到RAID卡的实际传输速度的重要因素
(3)不同的RAID卡出厂时配备的内存容量不同,一般为几兆到数百兆容量不等

三、创建

准备工作:

(1)先给虚拟机添加4块SCSI硬盘

(2)查看是否有mdadm,rpm -q mdadm  没有就yum install -y mdadm

 1.创建RAID 0

创建  mdadm -Cv /dev/md0 -l 0 -n 2 /dev/sd[b,c]1

查看RAID 0信息  cat /proc/mdstat

查看RAID 0详细信息  mdadm -D /dev/md0 

格式化并挂载

mkfs.xfs /dev/md0

mount /dev/md0 /mnt

查看  df -Th

删除RAID 0

先取消挂载  umount /dev/md0

停止设备  mdadm -S /dev/md0

删除RAID 0信息  mdadm --zero-superblock /dev/sdb1

                            mdadm --zero-superblock /dev/sdc1

查看  lsblk

2.创建RAID 1

创建  mdadm -Cv /dev/md1 -l 1 -n 2 /dev/sd[d,e]1

查看RAID 0信息  cat /proc/mdstat

查看RAID 1详细信息  mdadm -D /dev/md1

格式化并挂载

mkfs.xfs /dev/md1

mount /dev/md1 /mnt

查看  df -Th

删除RAID 1

先取消挂载  umount /dev/md1

停止设备  mdadm -S /dev/md1

删除RAID 1信息  mdadm --zero-superblock /dev/sdd1

                            mdadm --zero-superblock /dev/sde1

查看  lsblk

3.创建RAID 5

创建  mdadm -Cv /dev/md5 -l 5 -n 3 /dev/sd[b,c,d]1 -x 1 /dev/sde1

查看RAID 5信息  cat /proc/mdstat

查看RAID 5详细信息  mdadm -D /dev/md5

格式化并挂载

mkfs.xfs /dev/md5

mount /dev/md5 /mnt

查看  df -Th

删除RAID 5

先取消挂载  umount /dev/md5

停止设备  mdadm -S /dev/md5

删除RAID 1信息  mdadm --zero-superblock /dev/sdb1

                            mdadm --zero-superblock /dev/sdc1

                            mdadm --zero-superblock /dev/sdd1

                            mdadm --zero-superblock /dev/sde1

查看  lsblk

4.创建RAID 10

创建  mdadm -Cv /dev/md0 -l 0 -n 2 /dev/sd[b,c]1

         mdadm -Cv /dev/md1 -l 1 -n 2 /dev/sd[d,e]1

         mdadm -Cv /dev/md10 -l 0 -n 2 /dev/md0 /dev/md1

查看RAID 10信息  cat /proc/mdstat

 查看RAID 5=10详细信息  mdadm -D /dev/md10

格式化并挂载

mkfs.xfs /dev/md10

mount /dev/md10 /mnt

查看  df -Th

删除RAID 10

先取消挂载  umount /dev/md10

停止设备  mdadm -S /dev/md10

                mdadm -S /dev/md1

                mdadm -S /dev/md1

删除RAID 10信息  mdadm --zero-superblock /dev/sdb1

                              mdadm --zero-superblock /dev/sdc1

                              mdadm --zero-superblock /dev/sdd1

                              mdadm --zero-superblock /dev/sde1

查看  lsblk

四、模拟故障

以RAID 5为例模拟故障

创建完之后格式化挂载 

模拟故障

mdadm /dev/md5 -f /dev/sdb1

查看详细信息

mdadm -D /dev/md5

可以看见sdb1坏了,由sde1顶上 

移除故障盘

mdadm /dev/md5 -r /dev/sdb1

再查看详细信息 mdadm -D /dev/md5

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/35108.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

游戏服务器研究二:大世界的 scale 问题

这是一个非常陈旧的话题了,没什么新鲜的,但本人对 scale 比较感兴趣,所以研究得比较多。 本文不会探讨 MMO 类的网游提升单服承载人数有没有意义,只单纯讨论技术上如何实现。 像 moba、fps、棋牌、体育竞技等 “开房间类型的游戏…

调幅信号AM的原理与matlab实现

平台:matlab r2021b 本文知识内容摘自《软件无线电原理和应用》 调幅就是使载波的振幅随调制信号的变化规律而变化。用音频信号进行调幅时,其数学表达式可以写为: 式中,为调制音频信号,为调制指数,它的范围在(0&…

C#专题之线程

5.1 资源访问冲突问题 internal class StateObject {private int state 5;public void ChangeState(){if (state 5){state;Console.WriteLine("state: " state " 线程ID:" Thread.CurrentThread.ManageThreadId);}state 5;} }static void…

关于读完《额尔古纳河右岸》后的一些感受

一点废话 我本是一个喜欢读书的人,爱读那些有深意的书籍,而非现在这些《数据结构》、《LINUX 高级编程》、《编译原理》等技术性书籍。读它们时,我的的目的性很强,就是想了解它,思考如何运用到工作中。虽然时常也会因…

Android上编译和使用curl

1 概述 Android系统编译的时候默认是没有带curl工具的,但是在aosp源码中,却是有curl的源码包含。所以只需要编译curl,然后将其push到Android设备中,就可以使用curl命令了。 2 编译curl 这里编译curl是在整机代码环境下进行编译…

24年嘉兴市索贝进出口有限公司--信息安全实施项目

截至24年6月24日,oms生产环境订单数12万5673条。 索贝是一家致力于成为竹木小家具头部企业的公司,截至24年6月24日,在册员工数130人,产值10个亿。 由于信息安全人才和能力的缺失,导致部署在阿里云生产环境的系统处于…

Spring_Bean

概述 bean是一种特殊的Java类 具有私有属性和公共getter和setter方法实现了可序列化接口具有无参构造函数 简单来说,bean就是一个类对象 在Spring中,bean是由Spring的IOC容器进行管理的,IOC容器中存放的就是一个个Bean对象 内容 id&…

Qt添加Dialog对话框

Qt版本:5.12.12 1.添加【模块】 Base class:可以选择QDialog、QWidget、QMainWindow 会自动生成MyDialog.h和MyDialog.cpp文件以及MyDialog.ui文件, 2.添加代码: (1)TestDialog.h #pragma once#include…

HarmonyOS开发 - 日志打印

在程序开发过程中,日志输出是不可或缺的一部分。能有效的记录和分析日志数据,使开发人员可以更好地了解程序的运行状况、解决问题、优化性能并满足合规性要求等。 当程序出现错误或异常时,日志记录输出可以帮助开发人员快速定位问题发生的位置…

AIGC 在前端流式获取内容SSE

AIGC 在前端流式获取内容SSE 简介具体实现 简介 在 OpenAI 的 API 中,SSE 通常用于实现实时数据传输。例如,在聊天模型(如 ChatGPT)中,使用 SSE 可以让客户端实时接收到生成的对话内容,而不需要等待整个响…

React官方文档学习记录

官方文档&#xff1a;React 代办&#xff1a;组件通信的方式&#xff1b; 1 标签语法JSX 你必须闭合标签&#xff0c;如 <br />。你的组件也不能返回多个 JSX 标签。你必须将它们包裹到一个共享的父级中&#xff0c;比如 <div>...</div> 或使用空的<>…

CppInsights: 学习C++模版的神器

CppInsights&#xff1a;深入理解C代码的利器 C是一门强大而复杂的编程语言&#xff0c;其复杂性主要体现在语言的多层次抽象和丰富的语法特性上。尽管这些特性使得C能够高效地处理复杂的任务&#xff0c;但也给开发者带来了理解和调试代码的巨大挑战。CppInsights正是在这一背…

【LeetCode】每日一题:排序链表

给你链表的头结点 head &#xff0c;请将其按 升序 排列并返回 排序后的链表 。 解题思路 主要是归并排序&#xff0c;即分治思想&#xff0c;两个数组都有序了之后再双指针合并。这个过程当中&#xff0c;链表排序涉及到&#xff1a; 1、如何寻找到中点来二分&#xff1a;快…

php composer 报错

引用文章&#xff1a; Composer设置国内镜像_composer 国内源-CSDN博客 php composer.phar require --prefer-dist yiidoc/yii2-redactor "*" A connection timeout was encountered. If you intend to run Composer without connecting to the internet, run the …

【Docker】rancher 管理平台搭建

目录 1. 所有节点安装docker 2. 所有节点配置/etc/sysconfig/docker 文件修改如下配置 3. 配置证书 4. 镜像仓库导入镜像 5. 创建镜像仓库 5.1 查询上传的 image id 5.2 镜像打标签 5.3 镜像上推 6. server 节点 7. client 节点 8. 在 server 节点启动 9. 查看运行…

SHELL/作业/2024/6/25

终端输入两个数&#xff0c;判断两数是否相等&#xff0c;如果不相等&#xff0c;判断大小关系 #!/bin/basha$1b$2 if [ $a -eq $b ]then echo "ab"elif [ $a -gt $b ]thenecho "a>b"elseecho "a<b"fi2.已知网址www.hqyj.com…

vivado AUTOPIPELINE_MODULE、AUTOPIPELINE_INCLUDE

自动管道模块 AUTOPIPELINE_MODULE属性为所有组建立一个单独的名称空间 在整个子层次结构中定义的名称。它必须设置在包括的层次结构上 GROUP和AUTOPIPELINE_ LIMIT标记的网络。它也必须使用 当在设计中多次实例化具有自动流水线特性的模块时。 参见Vivado Design Suite用户指南…

算法训练营day20--235. 二叉搜索树的最近公共祖先+701.二叉搜索树中的插入操作 +450.删除二叉搜索树中的节点

一、235. 二叉搜索树的最近公共祖先 题目链接&#xff1a;https://leetcode.cn/problems/lowest-common-ancestor-of-a-binary-search-tree/ 文章讲解&#xff1a;https://programmercarl.com/0235.%E4%BA%8C%E5%8F%89%E6%90%9C%E7%B4%A2%E6%A0%91%E7%9A%84%E6%9C%80%E8%BF%91…

PointCloudLib-开发环境搭建-C++

简介 PCL(Point Cloud Library)是在吸收了前人点云相关研究基础上建立起来的大型跨平台开源C++编程库,它实现了大量点云相关的通用算法和高效数据结构,涉及到点云获取、滤波、分割、配准、检索、特征提取、识别、追踪、

Linux源码阅读笔记04-实时调度类及SMP和NUMA

Linux进程分类 实时进程普通进程 如果系统中有一个实时进程并且可执行&#xff0c;调度器总是会选择他&#xff0c;除非有另外一个优先级高的实时进程。SCHED_FIFO&#xff1a;没有时间片&#xff0c;被调度器选择之后&#xff0c;可以运行任意长的时间。SCHED_RR&#xff1a;有…