我应该如何构建一个无限大小的本地存储?

Posted

技术标签:

【中文标题】我应该如何构建一个无限大小的本地存储?【英文标题】:How should I build an on-premise storage with unlimited size? 【发布时间】:2020-10-24 14:25:56 【问题描述】:

基本上,我想构建支持无限大小(个人兴趣)的本地存储。我想避免与任何云供应商集成。它应该支持对磁盘存储的抽象,例如,数据库可能具有无限的大小。我应该调查哪些方向?

【问题讨论】:

【参考方案1】:

如果你会使用 Linux,你可以查看LVM。 LVM 允许您在各种拓扑中动态添加存储。

如果您需要该卷之上的文件系统,您可能需要ext4。一旦你扩展了 ext4 底层的存储,ext4 就可以轻松地吞噬额外的空间并将其作为空闲空间添加到自身。

如果您需要冗余 (RAID),您可以在 md 之上构建您的 LVM 卷。您还可以在 LVM 卷上构建 md 设备,尽管这不是那么广泛有用。

为了完整起见,如果您想从不同的机器添加存储,这些机器可以将 iSCSI 卷导出到您设置 LVM 的机器。

如果这些机器只能导出一个文件系统,例如NFS,然后您可以在文件系统上创建一个大文件,将其制成loop device,并将其用作卷。

最后,您还可以在挂载树的不同点挂载不同的NFS 卷。它在将存储扩展到数据库之类的东西时不是很有用,但在添加新应用程序时扩展存储很有用。

对于所有网络选项,我的建议是:不要对包含机器根文件系统的卷使用网络存储。

【讨论】:

以上是关于我应该如何构建一个无限大小的本地存储?的主要内容,如果未能解决你的问题,请参考以下文章

如何在不本地存储的情况下知道图像文件大小

每当我发布新代码时如何从客户端清除本地存储

本地储存

我应该调整图像大小以便在UITableView中显示吗?

git - 如何克隆本地 svn 存储库?

xml 将其添加到pom.xml的构建部分以生成与wsdl相关的类。 wsdl应该在src / main / resources下本地存储