当交换分区出现故障时,是否存在我没​​有考虑到的风险?

当交换分区出现故障时,是否存在我没​​有考虑到的风险?

我计划在 raid10 配置中设置 4 个驱动器,但在每个驱动器上放置单独的交换分区(无 raid),并让内核执行类似于 raid0 的操作。当/如果其中一个驱动器发生故障并且其上有交换数据:

  • 内核可能会崩溃。
  • 当前正在运行的进程的内存中存储的任何数据都可能会丢失。

到目前为止,这似乎是一个可以接受的失败案例。还有其他的失败案例吗?坏事有没有可能发生我还没有考虑到的事情?

答案1

还可能发生另一件事:如果必须将部分或全部交换的进程(即:由于不活动)重新加载到 RAM 中(即:由于外部因素,如用户迭代)并且交换分区死机,则换入进程无法完成,并且该进程将崩溃或变得疯狂。

出于所有这些原因,我强烈建议不要在服务器上使用 RAID-0 交换分区。在工作站/客户端上,这可能是合理的,但实际情况是,即使是 RAID-0 形式的大规模磁盘阵列与 RAM 相比也非常慢,因此在功能上与使用 RAID-10 没有什么不同

答案2

抱歉,我从来没有勇气涉足非冗余交换领域。所以除了“不要这样做”之外,这不是对你问题的直接回答。

我想分享我的观点:一般来说,如果你依赖 swap 的性能,那么你可能做错了什么。如果你不关心 swap 的性能,那么就让它变得多余吧。

更多的 RAM 总是比更多的交换性能更便宜!

相关内容