服务器硬件及RAID配置实践

1、RAID磁盘阵列介绍

2、创建RAID磁盘阵列

1、RAID:中文简称为独立冗余磁盘阵列
把多块独立的物理硬盘按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术。
组成磁盘阵列的不同方式称为RAID级别,有:
 
RAID0,RAID1,RAID5,RAID6,RAID1+0等
  • RAID 0(条带化存储):RAID0连续以位或字节为单位分割数据,并行读/写于多个磁盘上,因此具有很高的数据传输率,但它没有数据冗余。RAID0只是单纯地提高性能,并没有为数据的可靠性提供保证,而且其中的一个磁盘失效将影到所有数据。RAID0不能应用于数据安全性要求高的场合。
  • RAID 1(镜像存储):通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据。当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID1可以提高读取性能RAID1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。
  •  RAID 5:N(N>=3)块盘组成阵列,一份数据产生N-1个条带,同时还有1份校验数据,共N份数据在N块盘上循环均衡存储N块盘同时读写,读性能很高,但由于有校验机制的问题,写性能相对不高(N-1)/N磁盘利用率可靠性高,允许坏1块盘,不影响所有数据。
  • RAID 6:N(N>=4)块盘组成阵列(N-2)/N磁盘利用率与RAID5相比,RAID6增加了第二个独立的奇偶校验信息块两个独立的奇偶系统使用不同的算法,即使两块磁盘同时失效也不会影响数据的使用相对于RAID 5有更大的“写损因此写性能较差。
  • RAID1+0:(先做镜象,再做条带)N(偶数,N>=4)块盘两两镜像后,再组合成一个RAID0,N/2磁盘利用率。N/2块盘同写入,N块盘同时读取性能高,可靠性高
  • RAID0+1:(先做条带,再做镜象)读写性能与RAID 10相同安全性低于RAID 10
 
它们的利弊如图对比:
 
 
 
 
2、创建软 RAID磁盘阵列步骤:
a)检查是否已安装mdadm软件包

 
rpm -q mdadm
yum install -y mdadm
 
 
b)使用fdisk工具将新磁盘设备/dev/sdb、/dev/sdc、/dev/sdd、/dev/sde划分出主分区sdb1、sdc1、sdd1、sde1,并且把分区类型的ID标记号改为fd
fdisk  /dev/sdb
fdisk  /dev/sdc
 
c)创建RAID
创建RAID5
 
mdadm -Cv /dev/md0 -l5 -n3 /dev/sd[bcd]1 -x1 /dev/sde1
-C:表示新建;
-v:显示创建过程中的详细信息。
/dev/md0:创建RAID5的名称。
-a yes:--auto,表示如果有什么设备文件没有存在的话就自动创建,可省略。
-l:指定RAID的级别,15表示创建RAID5。
-n:指定使用几块硬盘创建RAID,n3表示使用3块硬盘创建RAID。
/dev/sd[bcd]1:指定使用这3块磁盘分区去创建RAID。
-x:指定使用几块硬盘做RAID的热备用盘,x1表示保留1块空闲的硬盘作备用
/dev/sde1:指定用作于备用的磁盘
 
d)创建并挂载文件系统

mkfs -t xfs /dev/md0
mkdir /myraid
mount /dev/md0 /myraid/
df -Th
cp /etc/fstab  /etc/fstab.bak
vim /etc/fstab
/dev/md0  /myraid   xfs  defaults  0  0
 
e)实现故障恢复

mdadm  /dev/md0 -f /dev/sdb1   模拟/dev/sdb1故障
mdadm -D /dev/md0         查看发现sde1已顶替sdb1
 
常用选项:
mdadm命令常用选项:
-r:移除设备
-a:添加设备
-S:停止RAID
-A:启动RAID
 
 
f)创建 /etc/mdadm.conf 配置文件,方便管理软RAID的配置,比如启动、停止

echo 'DEVICE /dev/sdc1 /dev/sdb1 /dev/sdd1 /dev/sde1'> /etc/mdadm.conf
mdadm --detail --scan>> /etc/mdadm.conf
umount /dev/md0
mdadm -S /dev/md0
mdadm /As /dev/md0
-s:指查找 /etc/mdadm.conf 文件中的配置信息
 
 
 
详细步骤实例:
首先别打开虚拟机,先编辑虚拟机设置,添加4个硬盘,每块分40G,然后在开启虚拟机
 
 
 
 
连接xshell,查看是否已安装mdadm软件包
 
 
 
 
接着创建分区并修改类型:
 由于创建四个分区并修改分区类型比较繁琐 可以用如图操作:
 
 
 
 可以fdisk -l 查看一下 以创建并修改好分区类型
 
 
 
 
 接下来创建RAID设备:
 
 
可以查看一下设备进度,也可以自动刷新例子是5秒刷新一次:
 
 
 
 
 
 
 
 
 
好了的话,我么可以在查看一下磁盘信息:
 
 
 
最后我们创建并挂载:
 
 
  最终 我们模拟down掉一个设备,看备份是否能顶上来用:
 
 
 
 
 
 
 
 
 
 
 
 

最新文章

  1. 10月24日下午PHP封装
  2. pentaho cde数据联动,下拉框,文本框,图形
  3. mybatis 学习!
  4. Extjs tree的相关方法及配置项
  5. HTML5实现下载文件且指定下载文件名
  6. Java性能优化权威指南-读书笔记(五)-JVM性能调优-吞吐量
  7. IText 生成页脚页码
  8. 【转】 Linux中的工作队列
  9. jdbc连接数据库的步骤
  10. 在centos 6.8下安装docker
  11. Django 的数据库查询
  12. 【Mybatis】MyBatis之Sql配置文件的使用(四)
  13. Tomcat解决中文乱码并部署项目
  14. .net core webapi 将localhost改成ip地址
  15. Windows SDK DDK WDK (Windows Driver Kit) 区别
  16. webApp总结
  17. TabLoaout简单框架
  18. 第三部分:Android 应用程序接口指南---第二节:UI---第四章 Action Bar
  19. 配置maven默认jdk版本
  20. 一个demo 理解 vuex

热门文章

  1. linux(CentOS7) 之 jdk1.8 下载及安装
  2. centos8 yum安装nginx后启动不了nginx
  3. Flask_响应(四)
  4. mysql-5.7.20-winx64安装图解教程
  5. Apache Shiro反序列化远程代码执行复现
  6. 【Java常用类】String
  7. leetcode 55. 跳跃游戏 及 45. 跳跃游戏 II
  8. HttpServletRequest接口详解
  9. 多线程-线程间通信-多生产者多消费者问题解决(notifyAll)
  10. ddos攻击是什么,如何防御