软件磁盘阵列

元气小坏坏 提交于 2019-12-16 09:58:45

(整理自《鸟哥的Linux私房菜》基础篇)

 

软件磁盘阵列

RAID 可以透过一个技术(软件或硬件),将多个较小的磁盘整合成为一个较大的磁盘装置。

1 raid级别

§   RAID-0 (等量模式, stripe):效能最佳

 

 

 

 §      RAID-1 (映像模式, mirror):完整备份

 

 

 

 RAID-1 最大的优点大概就在于数据的备份吧!不过由于磁盘容量有一半用在备份,因此总容量会是全部磁盘容量的一半而已。

 §      RAID 1+0RAID 0+1(组合方式)

 

 

 

 §      RAID 5:效能与数据备份的均衡考虑

 

 

 

 §  Spare Disk:预备磁盘的功能

 

磁盘阵列的优点

1.     数据安全与可靠性:指的并非网络信息安全,而是当硬件 (指磁盘) 损毁时,数据是否还能够安全的救援或使用之意;

2.     读写效能:例如 RAID 0 可以加强读写效能,让你的系统 I/O 部分得以改善;

3.     容量:可以让多颗磁盘组合起来,故单一文件系统可以有相当大的容量。

 

我们来列表看看上面几个重要的 RAID 等级各有哪些优点吧!假设有 n 颗磁盘组成的 RAID 设定!

项目

RAID0

RAID1

RAID10

RAID5

RAID6

最少磁盘数

2

2

4

3

4

最大容错磁盘数(1)

n-1

n/2

1

2

数据安全性(1)

完全没有

最佳

最佳

比 RAID5 好

理论写入效能

(2)

n

1

n/2

<n-1

<n-2

理论读出效能

(2)

n

n

n

<n-1

<n-2

可用容量(3)

n

1

n/2

n-1

n-2

一般应用

强调效能但数据不重要的环境

资料与备份

服务器、云系统常用

资料与备份

资料与备份

 

3软件磁盘阵列的设定

通过dadm 指令。 这个指令在建立 RAID 的语法有点像这样:

 

 

 

 假设底下是我们希望做成的 RAID 5 环境:

•        利用 4 个 partition 组成 RAID 5;

•        每个 partition 约为 1GB 大小,需确定每个 partition 一样大较佳;

•        利用 1 个 partition 设定为 spare disk

•        chunk 设定为 256K 这么大即可!

•        这个 spare disk 的大小与其他 RAID 所需 partition 一样大!

•        将此 RAID 5 装置挂载到 /srv/raid 目录下

最终我们需要 5 个 1GB 的 partition。

 

 

 

 

 

 

 由于磁盘阵列的建置需要一些时间,所以你最好等待数分钟后再使用『 mdadm --detail /dev/md0 』去查阅你的磁盘阵列详细信息! 除了这个指令之外,你也可以查阅如下的文件来看看系统软件磁盘阵列的情况:

 

 

 

 上述的资料比较重要的在特别指出的第一行与第二行部分:

•        第一行部分:指出 md0 为 raid5 ,且使用了 vda8, vda7, vda6, vda5 等四颗磁盘装置。每个装置后面的中括号 [] 内的数字为此磁盘在 RAID 中的顺序 (RaidDevice);至于 vda9 后面的 [S] 则代表 vda9 为 spare 之意。

•        第二行:此磁盘阵列拥有 3142656 个 block(每个 block 单位为 1K),所以总容量约为 3GB, 使用 RAID 5 等级,写入磁盘的小区块 (chunk) 大小为 256K,使用 algorithm 2 磁盘阵列算法。 [m/n] 代表此数组需要 m 个装置,且 n 个装置正常运作。因此本 md0 需要 4 个装置且这 4 个装置均正常运作。 后面的 [UUUU] 代表的是四个所需的装置 (就是 [m/n] 里面的 m) 的启动情况,U 代表正常运作,若为 _ 则代表不正常。

 

4.格式化与挂载使用 RAID

我们这里的参数为:

•        srtipe (chunk) 容量为 256K,所以 su=256k

•        共有 4 颗组成 RAID5 ,因此容量少一颗,所以 sw=3 喔!

•        由上面两项计算出数据宽度为: 256K*3=768k

以整体来说,要优化这个 XFS 文件系统就变成这样:

 

 

 

 4.5  关闭软件 RAID(重要!)

 

 

为啥上面会有数个 dd 的指令啊?这是因为 RAID 的相关数据其实也会存一份在磁盘当中,因此,如果你只是将配置文件移除, 同时关闭了 RAID,但是分区槽并没有重新规划过,那么重新启动过后,系统还是会将这颗磁盘阵列建立起来,只是名称可能会变成/dev/md127 就是了! 因此,移除掉 Software RAID 时,上述的 dd 指令不要忘记!但是...千千万万不要 dd 到错误的磁盘。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!