服务器硬件及RAID配置实战
一、RAID磁盘阵列介绍
1、定义
是Redundant Array of Independent Disks的缩写,中文简称为独立冗余磁盘阵列
把多块独立的物理硬盘按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术
组成磁盘阵列的不同方式称为RAID级别(RAID Levels)
常用的RAID级别:RAID0、RAID1、RAID5、RAID6、RAID1+0
2、RAID 0(条带化存储)
RAID 0连续以位或字节位单位分割数据,并行读/写于多个磁盘上,因此具有很高的数据传输率,但是没有数据冗余
RAID 0只是单纯地提高性能,并没有为数据的可靠性提供保证,并且其中的一个磁盘失效将影响到所有数据
RAID 0不能应用于数据安全性要求高的场合

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

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

5、RAID 6
N(N>=4)块盘组成阵列,(N-2)/N磁盘利用率
与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块
两个独立的奇偶系统使用不同的算法,即使两块磁盘同时失效也不会影响数据的使用
6、RAID 1+0(先做镜像,再做条带)
N(偶数,N>=4)块盘两两镜像后,在组合成一个RAID 0
N/2磁盘利用率,N/2块盘同时写入,N块盘同时读取,性能高,可靠性高
7、RAID 0+1(先做条带,再做镜像)
读写性能与RAID 10相同,安全性能低于RAID10


各种RAID之间的区别
| RAID级别 | 硬盘数量 | 磁盘利用率 | 是否有校验 | 保护能力 | 写性能 |
| RAID0 | N | N | 无 | 无 | 单个硬盘的N倍 |
| RAID1 | N(偶数) | N/2 | 无 | 允许一个设备故障 | 需写两对存储设备,互为主备 |
| RAID5 | N>=3 | (N-1)/N | 有 | 允许一个设备故障 | 需写计算校验 |
| RAID6 | N>=4 | (N-2)/N | 有 | 允许两个设备故障 | 需双重写计算校验 |
| RAID10 | N>=4(偶数) | N/2 | 无 | 允许两个基组中各坏一个 | N/2块盘同时写入 |
二、阵列卡介绍
阵列卡是用来实现RAID功能的板卡
通常是由I/O处理器、硬盘控制器、硬盘连接器和缓存等一系列组件构成的
不同的RAID卡支持的RAID功能不同,例如支持RAID0、RAID1、RAID5、RAID10等
RAID卡的接口类型:IDE接口、SCSI接口、SATA接口和SAS接口
三、阵列卡的缓存
缓存(Cache)是RAID卡与外部总线交换数据的场所,RAID卡先将数据传送到缓存,在由缓存和外边数据总线交换数据
缓存的大小与速度是直接关系到RAID卡的实际传输速度的重要因素
不同的RAID卡出厂时配备的内存容量不同,一般为几兆到数百兆容量不等
四、实验构建软RAID磁盘阵列
需求描述:为Linux服务器添加4块SCSI硬盘
使用mdadm软件包,构建RAID5磁盘阵列,提高磁盘存储的性能和可靠性
1、检查是否已安装mdadm软件包
如果没有安装可以使用此命令安装:yum install -y mdadm

2、使用fdisk工具将新磁盘设备/dev/sdb 、/dev/sdc、/dev/sdd、/dev/sde划分出主分区sdb1、sdc1、sdd1、sde1,并把分区类型的ID标记号改为“fd”,其他三个也像如下设置主分区

3、创建RAID5设备
-C表示新建
-v:显示创建过程中的详细信息
/dev/md0:创建RAID5的名称
-l5:表示创建RAID5
-n:指定使用几块硬盘创建RAID,n3表示使用三块硬盘创建RAID
/dev/sd[bcd]1:指定使用者3块磁盘分区去创建RAID
-x:指定使用几块硬盘做RAID的热备用盘,x1表示保留1块空闲的硬盘作备用
/dev/sde1:指定用于备用的磁盘
4、查看RAID磁盘的详细信息
cat /proc/mdstat
或mdadm -D /dev/md0
也可以用watch命令来每隔一段时间刷新 /proc/mdstat的输出
watch -n 5 ‘cat /proc/mdstat’
也可以用下面命令来检查磁盘是否已做RAID
mdadm -E /dev/sd[b-e]1
5、创建并挂载文件系统

在date中创建文件以及目录

6、实现故障恢复
先模拟/dev/sdb1故障


查看date目录中的文件是否丢失

7、创建 /etc/mdadm.conf配置文件,方便管理软RAID的配置,比如启动、停止
使用从镜像输出的方法
也可以使用从镜像追加的方法

8、mdadm命令其他常用选项
-r:移除设备
-a:添加设备
-S:停止RAID
-A:启动RAID


停止RAID

服务器硬件及RAID配置实战的更多相关文章
- 七、服务器硬件及RAID配置实战
一.RAID磁盘阵列介绍 磁盘阵列的全名(Redundant Arrays of Inexpensive Disk,RAID),中文简称是独立冗余磁盘阵列.冗余(如果磁盘出现故障,可以保证数据不丢) ...
- 服务器硬件及RAID配置实践
服务器硬件及RAID配置实践 1.RAID磁盘阵列介绍 2.创建RAID磁盘阵列 1.RAID:中文简称为独立冗余磁盘阵列 把多块独立的物理硬盘按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供 ...
- 服务器硬件和RAID配置
服务器 硬件和RAID配置 目录 一.RAID 磁盘阵列介绍 1.1.RAID 0(条带化存储) 1.2.RAID 1(镜像存储) 1.3.RAID 5 1.4.RAID 6 1.5.RAID 1+0 ...
- 服务器RAID配置全程与RAID基础知识
服务器RAID配置全程 一.RAID介绍 RAID是Redundent Array of Inexpensive Disks的缩写,直译为“廉价冗余磁盘阵列”,也简称为“磁盘阵列”.后来RAID中的字 ...
- PHP-5.5.10+Apache httpd-2.4.9在Windows系统下配置实战
原文 PHP-5.5.10+Apache httpd-2.4.9在Windows系统下配置实战 环境配置: 程序准备: PHP windows版本下载地址: http://windows.php. ...
- CentOS6软raid配置与管理
事先添加硬盘设备sdb.sdc.sdd.sde.无论是物理硬盘还是虚拟硬盘,最好使用同型号同大小的硬盘. 创建raid设备 支持raid0.1.4.5.6级别 # mdadm -C /dev/md0 ...
- 深入浅出 SSL 管理配置实战
我们生活在一个信息大爆炸的时代,几乎每天都在和互联网打交道,购物.网银转账.支付宝付款.搜索信息.查看邮件.观看视频.微信聊天.上网冲浪.阅读新闻等,无不时时刻刻在和网络打交道.那如何保护网络安全就相 ...
- (转)Ctrl+H 浪潮Raid配置文档
说明 本手册适用于LSI芯片Raid卡 包括但不限于Inspur 2008/2108 Raid卡.LSI 9240/9260/9261/9271 等Raid卡. 不同型号的Raid卡在某些功能上的支持 ...
- keepalived安装配置实战心得(实现高可用保证网络服务不间断)
keepalived安装配置实战心得(实现高可用保证网络服务不间断) 一.准备2台虚拟机 安装的系统是:centos-release-7-1.1503.el7.centos.2.8.x86_6 ...
随机推荐
- Iterable 和 Iterator
可以被for循环输出的为iterable (可迭代对象) 可以被next()调用并不断返回下一个数据的对象为iterator迭代器(python一切皆对象) 数据流,无法知晓其终点,只能推过next不 ...
- 使用CSS设置边框和背景
一.设置边框 1.边框样式 属性 说明 border-width 设置边框的宽度 boder-style 设置边框的样式 border-color 设置边框的颜色 a.border-width属性 自 ...
- H5开发基础之像素、分辨率、DPI、PPI
H5开发基础之像素.分辨率.DPI.PPI html5 阅读约 4 分钟 2016-09-03于坝上草原 背景知识: 目前绝大部分显示器都是基于点阵的,通过一系列的小点排成一个大矩形,通过每个小 ...
- Linux中级之keepalived配置
hacmp: ibm的高可用集群软件,并且是商业的(收费),一般用于非x86架构机器当中 AIX,Unix 去IOE:ibm,oracle,emckeepalived: 一款高可用集群软件,利用vrr ...
- brk 和 sbrk 区别
转自:https://www.cnblogs.com/chengxuyuancc/p/3566710.html brk和sbrk的定义,在man手册中定义了这两个函数: 1 #include < ...
- 重新整理 .net core 实践篇————配置系统——军令(命令行)[六]
前言 前文已经基本写了一下配置文件系统的一些基本原理.本文介绍一下命令行导入配置系统. 正文 要使用的话,引入Microsoft.extensions.Configuration.commandLin ...
- Python单元测试简介及Django中的单元测试
Python单元测试简介及Django中的单元测试 单元测试负责对最小的软件设计单元(模块)进行验证,unittest是Python自带的单元测试框架. 单元测试与功能测试都是日常开发中必不可少的部分 ...
- 固态LiDAR,半固态混合LiDAR,机械LiDAR
固态LiDAR,半固态混合LiDAR,机械LiDAR 1. APD/SPAD 2轴MEMS扫描镜+ SPAD图像传感器在混合固态LiDAR中的应用 APD的工作模式分为线性模式和盖革模式两种.当APD ...
- 使用CUDA Warp-Level级原语
使用CUDA Warp-Level级原语 NVIDIA GPU以SIMT(单指令,多线程)的方式执行称为warps 的线程组.许多CUDA程序通过利用warp执行来实现高性能.本文将展示如何使用cud ...
- 使用Auto TensorCore CodeGen优化Matmul
使用Auto TensorCore CodeGen优化Matmul 本文将演示如何使用TVM Auto TensorCore CodeGen在Volta / Turing GPU上编写高性能matmu ...