![分布式文件系统网络引导主机](https://linux22.com/image/788266/%E5%88%86%E5%B8%83%E5%BC%8F%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E7%BD%91%E7%BB%9C%E5%BC%95%E5%AF%BC%E4%B8%BB%E6%9C%BA.png)
当我将旧服务器用作像 MooseFS 这样的备份分布式文件系统时,我发现整个概念存在冲突:
DFS 具有容错能力,并可自行跟踪 HDD 状态,因此任何承载数据的文件系统最好不使用 RAID。不过,操作系统应该能够容错 HDD 故障,并且不会出现任何可能的启动问题。使用 RAID 是实现此目标的最佳方式。
在我的设置中,这给我留下了很少的选择:
- 使用 RAID-1 中的两个 HDD 来存储操作系统,使用 JBOD 中的其他 HDD 来存储数据,这样会占用 4xLFF 服务器 HDD 托架的一半。
- 在 LVM 或 MD 模式下使用小分区,并使用大分区来存储数据,这可能会导致启动问题、在 HDD 故障后恢复操作系统,并且还会破坏专用 HDD 存储数据的最佳实践。
- 网络启动的主机,所有磁盘均专用于存储。
网络启动带来了其他选项:
- 主机可以在“root-on-NFS”或“root-on-iSCSI”模式下启动,这会使操作系统文件访问相对较慢。
- 主机可以从网络压缩文件启动到 RAM,从而使操作系统运行速度更快,但无法保存本地数据。
我的问题是:
是否存在没有存储在存储服务器(而非元数据服务器)上的本地数据的 DFS 架构?
如果本地文件(而不是存储的块)相对较慢,DFS 可能会发生什么?
是否有办法将操作系统加载到 RAM 中,但仍将其保存在网络后端?