多个AWS EC2实例之间的共享文件系统

问题描述:

我有几个在Amazon EC2上运行的Windows服务器实例,并希望通过运行具有负载平衡器的重复实例来使它们更具容错性。多个AWS EC2实例之间的共享文件系统

问题是特定数据,例如,如果文档根目录的内容(如C:/ htdocs /(Apache)或C:/ Repositories)从一个Web服务器故障切换到另一个Web服务器(VisualSvn服务器)不完全相同。

有没有办法在两个或多个实例之间共享一个卷?

我的想法是EC2 istances之间共享文件夹:

enter image description here

我读这是不可能的附加同一EBS卷到多个实例。我相信AWS也不是NFS友好的,以防万一我想跨NFS安装它们。

最后,我也检查了使用s3fs挂载的S3存储桶,但是我发现它也不是一个好选择。

任何人都可以帮助我指出正确的方向吗?

+0

[多个AWS EC2实例之间的共享存储]可能重复(http://*.com/questions/17415620/shared-storage-between-multiple-aws-ec2-instances) – Thilo 2015-10-06 12:24:11

你说得对,目前无法将EBS卷添加到多个实例。要为所有实例创建一个公共存储,可以选择NFS,安装S3存储桶或使用像GlusterFS这样的分布式集群文件系统。

但是,在大多数情况下,您可以简化您的设置。尝试将静态资产转移到另一个(静态)域,或者甚至将其托管在启用了网站的S3存储桶上。这样,您只需关心应用程序服务器上的动态应用程序逻辑或脚本。

还尝试使用一些自动部署和/或配置管理工具。通过这些,您可以轻松创建新机器,或者您可以使用它们在机器上部署最新的代码。

+0

您如何看待我的想法在实例上创建共享文件夹? – 2014-11-22 16:24:35

+2

这很大程度上取决于您的用例和您的应用程序。我建议先从最简单的设置(例如NFS)开始,创建一个基准测试用例,并测量应用程序的执行方式(从延迟,吞吐量,响应时间,服务器负载等方面)。您也可以稍后使用此基准测试案例比较其他高级设置。 – j0nes 2014-11-22 21:37:46