两个分区上的 Raid 1:这是一件好事吗?

两个分区上的 Raid 1:这是一件好事吗?

因此,我有一个 2TB 硬盘 ( sda) 和一个 500GB 硬盘 ( sdb)。我创建了一个sdb占据整个设备的分区( sdb1),记下它有多大,然后在sda相同大小上创建了一个分区 ( sda1)。

然后,我在两个分区之间创建了一个 RAID1 阵列:mdadm --create /dev/md/md1 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1

我想要实现的是在sda( sda1) 上有一个镜像到sdb.我是 RAID 新手。我做事的方式好吗?还有更好的办法吗?我很高兴听到一些建议

答案1

RAID1 是关于镜像的。无论您镜像分区还是磁盘都没有关系。

根据您的描述,听起来您已经正确地解决了该要求:您/dev/sdb1的 2TB 磁盘上有一个 500GB 的分区,其大小相当于 500GB 的分区,并且您已经在它们之间创建了 RAID1 镜像。

您可以用来cat /proc/mdstat查看配置(以及镜像状态,如果仍在进行中)。

但请记住,RAID 不是备份 - 如果您意外删除(或以其他方式破坏)文件,那么该文件将在镜像的两半上被删除(或破坏)。你可能最好将两半保留为单独的分区,然后使用旧的 500GB 磁盘作为新分区的定期备份。 (例如,rsnapshot顶部rsync是我首选的解决方案之一,以及专有的适用于 Linux 的 Veeam 代理是另一个。)但这在很大程度上取决于情况和您的特定要求。

答案2

两个分区上的 Raid 1:这是一件好事吗?

代表冗余,这将取决于您想要冗余的原因。

一般来说,首先:系统的可用性
需要冗余的第一个原因是在容错的情况下:即使在出现某些硬件故障的情况下,保证您的系统仍能保持完整功能(可能会降低性能)。
为什么需要 RAID-1?为了让您的系统在两个驱动器之一停止运行时保持完整功能。

读操作的性能(在 RAID-1 的特定情况下)
如果您的工作负载主要由磁盘上同时进行大量随机读取的任务组成,您可能希望在两个不同的控制器上共享 I/O 负载并有效地提高吞吐量。

当然,这一切都不是免费的。至少任何写操作都会(更)昂贵。


由于成本(以及其他缺点),您不希望 RAID-1 作为仅保存数据的解决方案

为了保留某些知名文件系统(ext 系列、zfs、ufs...)上的数据,我个人确保选择最安全的挂载选项(通常是默认值),然后使用同步用于备份。
rsync 当然可以从 cron 启动,运行守护进程,而且,在任何情况下我更喜欢:预定的 SCHED_BATCH (以便仅在您的系统没有其他可实现的情况下运行)
在任何情况下,这都可以在比任何 RAID 配置便宜且安全的方式。

相关内容