结合两个云服务器存储来为应用程序(apache)提供通用存储

结合两个云服务器存储来为应用程序(apache)提供通用存储

我的团队需要 2 个具有通用存储的应用服务器。

我们当前的云提供商没有 SAN;因此我们希望利用每个应用服务器的本地存储。2 个应用服务器分别配备了 200GB 的 NVME 存储。我们需要大约 50GB 的存储空间用于操作系统。

如何利用剩余空间,实现两台服务器的CMS文件共用存储/单一文件夹?

如果有什么不清楚的地方请告诉我,我会尽量说得更准确。

答案1

这个问题很难完全回答。这完全取决于你的目标和期望。

以下是 4 种潜在的解决方案,它们变得越来越复杂,并且需要更多定期关注:

快捷又粗糙的解决方案是简单地在 cron 作业上运行 rsync(每分钟?),并将文件复制到服务器并从服务器复制文件。这有点危险,因为您最终可能会在两个地方修改文件,最终陷入混乱。

更复杂的是,您可以通过设置一个 bash 脚本来inotifywait等待文件/目录被修改,然后在发生修改后立即进行 rsync,从而帮助减少两个服务器都可能修改文件的潜在时间。

更复杂的是,您可以使用文件系统框架,例如“glusterfs”,它可以在大型环境中复制文件。此选项不适合周末战士。由于轻微的配置错误,它可能会失败(我经历过),并带来无穷无尽的麻烦。当正确配置和设置时,它可以工作得非常好。

最后,您可以走极端,使用类似 的方法在服务器之间进行块级复制drbd,这(在大多数情况下)是极端的路线。在我自己的数据中心,我已设置了复制的块存储设备,并在 HA 虚拟环境中使用 NFS 取得了巨大成功。存储阵列可能随时死机,而运行在其上的虚拟机永远不会出现超过几毫秒的延迟。

相关内容