跨 AWS 节点共享/复制 EBS

跨 AWS 节点共享/复制 EBS

我想在多个 EC2 节点(Web/应用服务器)上使用单个 EBS 存储。我读过一些关于快照共享的文章,但这不太适合我们的需求。

我们使用文件系统来存储数据库记录附件,因此如果创建了这样的附件,我们需要它立即可供所有节点使用(提供服务)。到目前为止,只有 NFS 似乎可行,但配置和维护起来很麻烦。

另一种选择是将这些附件存储在 S3 上,但这会使我们无法对这些数据进行任何分析。

这一定是在 AWS 扩展时相当常见的问题,有什么解决方案吗?

答案1

目前还没有办法在实例之间直接共享 EBS。但是!还有其他选择:

最具可扩展性的方式:S3。最复杂的方式:分布式文件系统(如 GlusterFS)。介于两者之间的解决方案:1 个安装了 lyncd 的主节点和从属节点。lsyncd 几乎以实时模式管理所有文件更新。此变体的缺点是所有文件更新操作都必须在主节点上完成。

对于小型项目(1-5 个节点),我会考虑 lsyncd 解决方案,对于较大的项目,我会使用 S3。

答案2

答案3

不使用直接文件系统访问,而是将数据库记录附件存储在可从多个 EC2 实例访问的服务后面怎么样?MySQL 数据库,或者像 Cassandra 这样的“NoSQL”选项可能是不错的选择。

我不明白为什么将附件存储在 S3 上会阻止您对数据进行分析;您能详细说明一下吗?

相关内容