RAID 全称 Redundant Array of Inexpensive Disks,即廉价冗余磁盘阵列,通过将多块磁盘组合成某种模式来提高吞吐量和可靠性。今天杜老师就为大家讲一下 Linux 系统软件磁盘阵列的搭建。
磁盘阵列功能
提高磁盘读取效率;
提供容错功能。
磁盘阵列等级
等级列表如下:
| 等级 | 描述 |
|---|---|
| RAID0 | 由两块或两块以上硬盘组成,数据分两份同时读写两块硬盘。优点是速度很快,缺点是数据安全性较差,一旦一块硬盘损坏,整个阵列的数据都会丢失;总容量为所有磁盘容量之和 |
| RAID1 | 由两块或两块以上硬盘组成,数据写入一块硬盘的同时也向另一块硬盘做同样操作,结果是同一份数据拥有两份副本,更安全。缺点是资源浪费、成本较高,总容量为一块硬盘的容量 |
| RAID10 | 由四块或以上硬盘组成,先由两块硬盘组建 RAID1,再由两组 RAID1 组建 RAID0。它兼具 RAID0 的高速与 RAID1 的安全,目前主流的 Web 服务器都采用这种阵列 |
| RAID5 | 由三块或以上硬盘组成,通过奇偶校验算法将数据分发到三块硬盘上;一块硬盘损坏时,可通过算法从另外两块硬盘上将数据还原。总容量为所有磁盘容量之和减去一块磁盘的容量 |
磁盘阵列命令
创建命令 mdadm -C /dev/md5 -l 5 -n 3 -x 1 /dev/sdb{1,2,3,5} 的解释如下:
| 选项 | 作用 |
|---|---|
| -C /dev/md5 | 创建一个以 md5 为命名的磁盘阵列 |
| -l 5 | 磁盘阵列等级为 5 |
| -n 3 | 使用 3 块作为阵列磁盘 |
| -x 1 | 使用 1 块作为备用磁盘 |
| /dev/sdb{1,2,3,5} | 分别调用 4 个分区组建磁盘阵列 |
查询命令列表如下:
| 命令 | 作用 |
|---|---|
| cat /proc/mdstat | 查询磁盘阵列运行状态 |
| mdadm -D /dev/md5 | 查询名为 md5 的磁盘阵列详细信息 |
模拟错误命令 mdadm /dev/md5 -f /dev/sdb1 的解释如下:
| 命令 | 作用 |
|---|---|
| -f /dev/sdb1 | 将/dev/sdb1 标记为错误的状态 |
移除磁盘命令 mdadm /dev/md5 -r /dev/sdb1 的解释如下:
| 命令 | 作用 |
|---|---|
| -r /dev/sdb1 | 从磁盘阵列移除/dev/sdb1 |
增加磁盘命令 mdadm /dev/md5 -a /dev/sdb1 的解释如下:
| 命令 | 作用 |
|---|---|
| -a /dev/sdb1 | 将/dev/sdb1 添加到磁盘阵列中 |
停用磁盘阵列命令 mdadm -S /dev/md5 的解释如下:
| 命令 | 作用 |
|---|---|
| -S /dev/md5 | 停用磁盘阵列 |
阵列搭建演示
点击播放: