A. 使用mdadm创建raid6的过程
既然无热备盘,为什么还有spare rebuilding的显示?难道你开了紧急全局热备?只有在你没指定热备,但又建了RAID,又没指定关闭这个功能的时候,紧急热备才生效,但这个需要某些RAID卡才支持。
既然有spare rebuiding,就表示这个RAID出了点问题,热备盘在做rebuild,按理说现在RAID应该是显示是degraded状态了。另外,创建过程中,状态clean这个名字太怪异了,我推测应该就是指初始化,但一般的RAID初始化回叫initial,只是因为在多种初始化模式中,有种模式就是clean。
RAID6也不是比RADI5多了块校验盘,而是多了一种校验算法,所以,算下来,恰好要多一个硬盘的容量。有独立校验盘的只有RAID 3,4,但都已经淘汰了。你的RAID 6没问题,所以就显示active resync.其实这个”同步“名字也误导人,业内的称健康可操作的RAID状态为normal活着“optimal”,只所以误导人,是因为RAID如果硬盘数据同步,只会发生在需要做rebuild的时候,正常情况下,数据由RAID控制器发送过去,已经是算好的了。
B. 如何使用linux程序mdadm创建软件RAID1软阵列 第2页
创建 RAID-1 阵列
磁盘分区完成后,我们可以使用以下命令创建 RAID-1 阵列:
# mdadm -Cv /dev/md0 -l1 -n2 /dev/sdb1 /dev/sdc1
说明:
-Cv: 创建一个阵列并打印出详细信息。
/dev/md0: 阵列名称。
-l1 (l as in "level"): 指定阵列类型为 RAID-1 。
-n2: 指定我们将两个分区加入到阵列中去,分别为/dev/sdb1 和 /dev/sdc1
以上命令和下面的等价:
# mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1
如果你想在在磁盘失效时添加另外一个磁盘到阵列中,可以指定 '--spare-devices=1 /dev/sdd1' 到以上命令。
输入 “y” 继续创建阵列,回车:
可以使用以下命令查看进度:
# cat /proc/mdstat
另外一个获取阵列信息的方法是:
# mdadm --query /dev/md0
# mdadm --detail /dev/md0 (或 mdadm -D /dev/md0)
'mdadm -D'命令提供的信息中,最重要就是阵列状态类。激活状态说明阵列正在进行读写操作。其他几个状态分别为:完成(读写完成)、降级(有一块磁盘失效或丢失)或者恢复中(一张新盘已插入,系统正在写入数据)。这几个状态涵盖了大多数情况。
格式化或加载磁盘阵列
下一步就是格式化阵列了,本例中使用ext4格式:
# mkfs.ext4 /dev/md0
现在可以加载阵列并验证其正常加载:
# mount /dev/md0 /mnt
# mount
C. 如何使用linux程序mdadm创建软件RAID1软阵列
安装mdadm
我们将使用mdadm(简称多盘管理)工具创建、组装、管理和监控软件RAID-1。晌滑在诸如Fedora、CentOS、RHEL或者Arch Linux 的发行版中,mdadm是默认安装的。在基于Debian的发行版中,可以使用aptitude 或者 apt-get 安装mdadm。
Fedora, CentOS 或 RHEL
由于adadm是预装的,所以我们只需要差世开启RAID守护服务,并将其配置成开机启动即可:
Shell
1
2
# systemctl start mdmonitor
# systemctl enable mdmonitor
对于CentOS/RHEL 6系统,使用以下命令:
Shell
1
2
# service mdmonitor start
# chkconfig mdmonitor on
Debian, Ubuntu 或 Linux Mint
在Debian或类Debian系统中,mdadm可以使用 aptitude 或者 apt-get 安装:
Shell
1
# aptitude install mdadm
Ubuntu系统中,会要求配置Postfix MTA 以发送电子邮件通知。你可以跳过去。
Debian系统中,安装程序会显示以下解释信息,用来帮助我们去判断是否将根目录安装到RAID阵列中。下面的所有操作都有赖虚谨肢于这一步,所以应该仔细阅读他。
D. Linux基础知识之--Raid及Mdadm管理工具
RAID是“Rendant Array of Independent Disk”的缩写,中文意思是独立冗余磁盘阵列。冗余磁盘阵列技术诞生于1987年,由美国加州大学伯克利分校提出。简单地说就是将N块硬盘通过RAID Controller(分Hardware,Software)结合成虚拟单块大容量的硬盘使用,其特色是N台硬盘同时读取速度加快及提供容错性(Fault Tolerant),所以RAID是当成平时主要访问数据的Storage不是Backup Solution
• RAID 0又称为Stripe或Striping,中文译为集带工作方式,有时也可以理解为“拼凑”
• 它是将要存取的数据以条带状形式尽量平均分配到多个硬盘上,读写时多个硬盘同时进行读写,从而提高数据的读写速度。RAID 0另一目的是获得更大的“单个”磁盘容量
• 硬盘数量:最少 2 个
A和B分别为两块硬盘,C为实行了Raid0之后的硬盘
A和B都为读写速度为300M的1T的硬盘,C为实行了Raid0以后的硬盘。它的读写速度可以达到600M,容量为2T。但缺点是一旦A或B损坏,C里所有数据丢失
因为在计算机看来它是一整块硬盘,在写的时候也是按照随机把数据写入A,B的。比如一个数据123456,把135写入了A,246写入了B,如果A坏了,B里的数据也没了意义
• 又称为Mirror或Mirroring,中文译为镜像方式
• 这种工作方式的出现完全是为了数据安全考虑的,它是把用户写入硬盘的数据百分之百地自动复制到另外一个硬盘上或硬盘的不同地方(镜像)。当读取数据时,系统先从RAID 1的源盘读取数据,如果读取数据成功,则系统不去管备份盘上的数据;如果读取源盘数据失败,则系统自动转而读取备份盘上的数据,不会造成用户工作任务的中断
• 由于对存储的数据进行百分之百的备份,在所有RAID级别中,RAID 1提供最高的数据安全保障。同样,由于数据的百分之百备份,备份数据占了总存储空间的一半,因而,Mirror的磁盘空间利用率低,存储成本高
• 硬盘数量:最少 2 个
A和B分别为两块硬盘,C为实行了Raid1之后的硬盘
A和B都为读写速度为300M的1T的硬盘,也就是A里面写什么B里面就写什么。B为A的备份。
读写速度为300M,容量为1T
• 先做Raid1,再做Raid0
• 硬盘数量:最少 4个
A,B,C,D分别为四块硬盘,E为实行了Raid10之后的硬盘
ABCD都为读写速度为300M的1T的硬盘,Raid10为AB和CD为实行了Raid1以后实行Raid0以后的硬盘。这样读写速度为600M,容量为2T
• Raid5是一种存储性能、数据安全和存储成本兼顾的存储解决方案,也是目前应用最广泛的RAID技术
• 各块独立硬盘进行条带化分割,相同的条带区进行奇偶校验 (异或运算),校验数据平均分布在每块硬盘上
• 以n块硬盘构建的RAID 5阵列可以有2/3块硬盘的容量,存储空间利用率非常高
• RAID 5不对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当RAID 5的任何一块硬盘上的数据丢失,均可以通过校验数据推算出来
• 硬盘数量:最少 3个
一共3T的硬盘,最后的容量可能会达到2T~2.6T左右。不怕硬盘坏一块,坏一块还能通过校验和推算出来数据。但坏两块及两块以上数据就没有了意义
• 先做Raid5,再做Raid0
• 硬盘数量:最少 6个
• 一般的中高档服务器多使用硬件RAID控制器来实现Hardware RAID,但是由于硬件RAID控制器的价格昂贵,导致系统成本大大增加。而随着处理器的性能快速发展,使得软件RAID的解决方法得到人们的重视
• SoftWare Raid即软件磁盘阵列,软件RAID使您可以将两个或多个块设备(通常是磁盘区)组合为单个 RAID 设备(/dev/mdX)
• 例如:假定有三个空分区:hda3、hdb3 和 hdc3。使用软件 RAID管理工具mdadm就能将这些分区组合起来
mdadm工具是一个管理软件RAID的独立程序,它能完成所有的软RAID管理功能
mdadm常用选项
• -A <阵列设备名>, --assemble:加入一个以前定义的阵列
• -C <阵列设备名>, --create:创建一个新的阵列
• -D <阵列设备名>, --detail:显示 md device 的详细信息
• -a yes :自动创建md阵列文件
• -l, --level=:设定 raid level
• -s, --scan:扫描配置文件或 /proc/mdstat以搜寻丢失的信息
• -n, --raid-devices=:指定阵列中可用 device 数目,这个数目只能由 --grow 修改
-x, --spare-devices=:指定初始阵列的富余device 数目
E. 什么是raid,如何在linux系统中实现
应用场景
Raid大家都知道是冗余磁盘的意思(Rendant Arrays of Independent Disks,RAID),可以按业务系统的需要提供高可用性和冗余性,目前市面上比较常见的是通过服务器的raid阵列卡来实现此功能。
通过硬件阵列卡实现raid具有可靠性高,性能好等特点,但是对于一般的企业而言硬件阵列卡固然好,如果大规模应用的话动辄几千上万的费用也不是他们所能承受的,难道就没有既能保证数据安全,又能减少费用支持的IT方案吗?当然有,软raid就可以实现这一需求。
实现步骤
软raid比较依赖操作系统,所以他的劣势也显而易见,需要占用系统资源(主要是CPU资源)。目前在Linux和windows下软raid都比较常见了,Linux是通过mdadm实现的,windows下则在win2003之后通过磁盘管理来实现。
实验环境
一台centos 7.2 VM,主机名分别为host1,host1上挂载两块50G的数据盘,我们的实验就在这两块数据盘上完成。
P.S:需要强调的是生产环境下两块组raid的硬盘必须是同品牌同型号同容量的,否则极容易出现软raid失效的情况。
1.确认操作系统是否安装了mdadm软件
[root@host1 ~]# rpm -qa |grep mdadm
mdadm-3.3.2-7.el7.x86_64
2.对两块数据盘进行分区,并设置分区类型为raid
4.创建md0的配置文件
echoDEVICE/dev/sd{a,b}1>>/etc/mdadm.conf
mdadm-Evs>>/etc/mdadm.conf
mdadm运行时会自动检查/etc/mdadm.conf 文件并尝试自动装配,因此第一次配置raid后可以将信息导入到/etc/mdadm.conf 中。
5.使用/dev/md0
在/dev/md0上创建文件,然后挂载进行使用。
mkfs.ext4/dev/md0
F. 如何在linux下做软raid
在虚抄拟机系统中添加一块10g的硬盘为袭sdb,将硬盘分5个逻辑盘分别是sdb{5,6,7,8,9},每个盘的大小是1G。
首先利用其中三块硬盘sdb{5,6,7}建立raid5,sdb8为热备盘。
然后将sdb6作为故障盘下线,之后拔出sdb6,插入新的盘sdb9。
命令如下:mdadm
-C
/dev/md0
-l5
-n3
-x1
/dev/sdb{5,6,7,8}
通过上面命令建立了使用空间为2G的raid5。盘符为/dev/md0
查看建立结果的方法有两种:
1.
mdadm
--detail
/dev/md0
2.
cat
/proc/mdstart
常用的raid的等级有0,1,5,6,10定义等级只需修改-l()的值即可
做故障测试的命令:mdadm
--manage
/dev/md0
-f
/dev/sdb6
-r
/dev/sdb6
-a
/dev/sdb9
其中-f==--fail
-r==--remove
-a=--add。
通过挂载和编辑开机启动fstab文件即可实现长挂载,但是如果删除建立的raid则需要卸载后用到
命令:mdadm
-S
/dev/md0
将raid停掉之后,再删除各个磁盘。其中-S=--stop
G. linux 如何挂载raid分区
1、创建所需的分区。
H. linux中mdadm什么意思
mdadm是linux下用于创建和管理软件RAID的命令