基本工作系统详细信息:
我使用 Ubuntu 12.04 服务器 CD 安装服务器。
我有 4 个磁盘。在所有磁盘上,我执行了以下操作,类似于此操作方法:
我将引导格式化为 ext3。我在根分区和大分区上设置了 RAID10。我将根目录格式化为 ext4。我在大卷上创建了一个逻辑卷,并将其格式化为 ext4。
生成的系统运行良好,启动正常。
问题详情:
然后我决定记录一个失败的过程。作为第一步,我决定重新安装 grub。
# grub-install /dev/sda
warn: This GPT partition label has no BIOS Boot Partition; embedding won't be possible!.
error: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and their use …Run Code Online (Sandbox Code Playgroud) 我是一名网络开发人员。我在硬件方面没有太多经验。出于这个原因,我使用托管服务器。
今天早上,我们设置中的一个驱动器出现故障。但是,整个网站都崩溃了。我问我的网络主机发生了什么,他回答说硬盘出现故障,RAID 控制器无法正常工作。阵列设置为 RAID 4。
你们以前见过吗?是否可以?
感谢您对这些家伙的任何帮助。我需要知道我的网络主机是否对我诚实。
对于这个简单的问题,我无法找到明确的是/否答案:在镜像模式下使用 ZFS 是否会使底层 vdev 的读取性能加倍?
这适用于单个请求或净性能(即单个读取请求跨两个磁盘分片或两个同时请求分别从不同磁盘同时提供服务)。
我们刚刚将旧的光纤 SAN 存储迁移到具有 24 个 SAS 600GB 磁盘的 IBM v3700 存储。
该存储直接连接到两台 IBM ESXi 5.5 服务器,每台服务器带有两个 6Gbps 多路径 SAS 控制器。
到目前为止,我已将我使用的存储配置为多个 RAID5 组。每个组将用于不同的服务器/目的。RAID 组主要是 OracleDB、Oracle 存档、SQL Server 和其他(文件服务器、邮件等)。最关键的应用程序是 Oracle 和 SQL Server。
我首先关心的是安全性,然后是我们应用程序的性能。所以我决定使用 RAID6 + 备件。
我现在主要关心的是,由于我们使用的是 ESXi,我是否应该将整个存储配置为一个 RAID,节省空间,并从 ESXi 为每个服务器创建数据存储卷,或者这不是一个好的做法,最好创建单独的硬件 RAID 组?
RAID 1 和 RAID 5(以及它们的兄弟 10 和 50)分别通过镜像和奇偶校验来实现数据冗余。这允许 RAID 阵列在磁盘(或整个磁盘)上的扇区变得不可读时仍然可以访问数据。RAID 6(或 60)使用附加检查来允许双重故障。
但是 RAID 阵列如何处理并非完全不可读,而是明显不一致的数据?
如果发生某些错误,例如在磁盘上更改了条带上的 fe 数据,但更改未传播到其他数据,则整个条带将变得不一致。如果在镜像集中,一个磁盘显示“此位为 0”而另一个磁盘显示“此位为 1”,那么 RAID 控制器如何知道哪个是正确的?相同的推理可以应用于 RAID-5 条带,但增加了复杂性,您无法轻易知道条带中的哪个扇区实际上是错误的。此外,RAID 6 是否通过双重检查缓解了这个问题,或者当数据实际上可读但在某处出错时,它是否仍然无法从数据损坏中恢复,尤其是当 RAID 6 阵列往往有很多磁盘时?
这在理论上可以通过校验和来解决,以确保数据(或奇偶校验)的哪个副本是正确的;但是是否有任何 RAID 控制器实际上实现了这种校验和(这当然会占用额外的空间)?或者它是否需要在操作系统级别处理,大多数文件系统可以并且将对其内容进行校验和?如果是这种情况,当 RAID 控制器的一般方法是从底层存储层抽象操作系统时,他们怎么能告诉 RAID 控制器“条带 Z 上磁盘 Y 上扇区 X 上的数据是错误的”可能的?
HP Proliant DL380 Gen9 在飓风艾玛期间受潮,配置为 RAID 1(镜像)的 2 个硬盘驱动器仍然完好。已经订购更换,规格与旧的相同,我可以简单地将 2 个硬盘插入同一台服务器,新服务器是否会使用旧硬盘启动?
我对 ZFS 有点陌生,但我正在创建一个包含 12 个物理驱动器的新存储池。
我目前的计划是在 10 个驱动器和两个热备件上使用 RAIDZ2。
但是我想知道在所有 12 个驱动器上使用 RAIDZ3 并且没有热备件是否会更好。
原因是热备件基本上是通电的空闲驱动器。它们可能需要数月或数年才能投入使用,那时我可能会发现它们不可行。如果它们是 RAID 条带的一部分,我至少可以得到关于它们是否好用的反馈。
我在网上没有看到太多关于这个的讨论。有没有人有建议?
随着超融合系统的发展,我们可以看到除 RAID 之外的其他技术来处理分布式存储(例如 ceph 或 VSAN 或 nutanix 中的分布式存储)。
但是有没有从对象存储衍生出来的开源技术,我可以在有很多大磁盘的单台服务器上使用,比如说十几个 12 到 sata 磁盘,这将确保数据安全,但没有更换一个巨大的重建时间的缺点盘。因此,动态磁盘池是一种分簇 RAID 形式,可用于块级别(如 iSCSI)或文件系统级别(如 zfs 或 brtrfs)。
我想提供类似于 SYNOLOGY 托架(NFS、iscsi 目标、SMB)但没有用于块存储的 RAID 的功能。
谢谢你的指点。
这已被问了一百万次,但每次答案都取决于“这取决于您的要求”条件,因此我无法提取适用于我的案例的一般准则。所以我再问一次。
我有一个 24 托架磁盘服务器(双 Xeon Silver 4210R,具有 128 GB RAM 和 CentOS 7)和 16 TB 磁盘来存储科学数据,组织在大文件(大小 ~ GB)中,通常写入一次然后处理多次(此处理的输出与以下内容无关)。数据是关键任务,但在某种程度上可以从其他存储站点恢复,因此数据丢失失败是一个大问题,但可能不是杀手。可用磁盘空间应在先前的限制范围内最大化。总而言之,按照重要性递减的顺序,我的约束是:
我的暂定解决方案是使用硬件 RAID 60 级别和两个 RAID 6 阵列,每个阵列 12 个磁盘,以及 ZFS 文件系统。在我的理解中,RAID 60 应该提供比 RAID 6 更可靠和读取性能更好的解决方案,并且在可用空间方面有合理的损失,而 ZFS 是容错文件系统的不错选择。我不知道这种配置可能的缺点(例如阵列重建时间?不同的文件系统?)也不知道可能的更好的替代方案,所以我想听听一些明智的意见。
提前感谢您的任何建议。
在 Synology Disk Station 上规划我的 RAID 设置期间,我阅读了大量有关各种 RAID 类型的文章,这是一本很棒的读物:RAID 级别和URE(不可恢复的读取错误)的重要性。
但是,我还不清楚一件事:
让我们有两个场景:
两种情况的相同假设:
发生什么了?使用 99.999 个文件重建 RAID 是否正常而 1 个文件丢失?还是我会丢失所有 100.000 个文件?
如果答案需要文件系统类型的知识,假设它是 BTRFS 或 ZFS 作为文件系统。
raid ×10
storage ×3
zfs ×2
database ×1
filesystems ×1
gpt ×1
grub2 ×1
hard-drive ×1
hp-proliant ×1
ibm ×1
mdadm ×1
ubuntu ×1
vmware-esxi ×1