我如何将EBS卷多个连接到多个EC2实例?

对于使用OCFS等集群文件系统或在计算机之间共享只读数据,需要将同一个SAN卷/ LUN同时连接到多个服务器。

我如何使用Amazon EC2上的EBS卷来做到这一点?

console.aws.amazon.com似乎不允许附加已经附加的卷,亚马逊文档不包含“multiattach”。 也许我需要另一个关键字来search?

你不可以做这个。 EC2 API不允许。

EBS仅适用于单个实例。 共享一个EBS实例就像把同一个物理磁盘放在两台机器上一样。

如果您需要磁盘的两个实例,则可以基于该EBS磁盘创buildEBS快照或AMI。 例如,这可让您运行多个Web服务器实例。

如果您真的希望共享存储数据看Amazon EFS ,或者您可以使用S3。

正如EEAA所述,你不能那样做。

但是,存在一个解决方法:将EBS卷附加到单个Linux实例,然后通过iSCSI导出设备。 现在在“客户端”实例上,您只需将该卷作为普通的iSCSI驱动器进行附加。

为了完整起见:请记住,传统的文件系统不能识别群集。 如果你从两个iSCSI客户端同时安装一个磁盘,你会(或多或less)立即破坏你的文件系统(至less是ext4; xfs有一些安全防护措施可以防止双卡)。 您必须使用群集感知文件系统,如OCFS(如您所build议的)或GFS2。

如果你想这样做,使用Elastic File System而不是EBS

https://aws.amazon.com/efs/

笔记:

  1. 它仍然在预览(已经几个月,但很多人正在使用它)

  2. 它可能是昂贵的