Cha*_*ish 3 amazon-ec2 amazon-ebs amazon-web-services
因此,我正在尝试了解有关 AWS EC2 Auto Scaling 的更多信息,并试图弄清楚实例之间的存储究竟是如何工作的。创建新实例时,每个实例看起来就像一个新的 EBS 卷。
如果我在 EC2 Auto Scaling 上运行 Web 服务器,如何将我的内容传输到创建的每个新 EC2 实例。有没有办法在所有 EC2 Auto Scaling 实例中使用一个 EBS 卷?我已阅读有关弹性文件系统的信息,但我不确定如何在创建新实例时将卷附加到它们。
在此先感谢您的帮助。
不可以,EBS 只能连接到一个 EC2 实例。你可以把它想象成普通的硬盘——它也只能连接到一台机器上。您可以在实例之间切换 EBS,但不能将其附加到多个实例。
EFS 只是类似于 nfs 或 samba 的网络文件系统,您可以使用 fstab 挂载它。但是您必须检查您所在地区是否提供 EFS!
据我了解,您正在尝试在所有机器之间共享文件存储。在这种情况下,您有几种方法可以实现它:
如果您不需要常规文件系统,则可以使用 S3。这是 AWS 中推荐的方式。但是S3不是文件系统,它是带有rest api的对象存储,因此您不能使用常规方法访问其上的文件,而必须使用amazon SDK。S3 的大小不受限制,并且多次访问没有问题。您甚至可以使用 S3 作为 CloudFront CDN 的后端。
如果您需要常规文件系统,您有几种方法。您可以使用可用的 EFS,也可以使用 gluster 构建一些存储虚拟机并将其挂载到您的实例。您肯定需要在 fstab 中挂载的自定义 AMI、准备 HA、备份等。但它像常规 FS 一样工作吗?它是共享和即时的 - 在机器 A 上创建的文件可以在机器 B 上立即访问
如果您只需要将您的应用程序部署到新启动的 EC2,您可以使用 CodeDeploy 或 OpsWorks 告诉自动调用组将您的应用程序部署到新的 EC2 上。但它仅适用于数量有限的发行版,我认为仅适用于 Amazon Linux、RHEL 和 Ubuntu。
如果您需要在所有 EC2 之间同步该存储并且不想设置某些存储 EC2,您可以只运行 rsync acccross cluster。这种方式有点棘手,并且在大量实例的情况下可能会出现问题。您也无法通过 rsync 实现即时共享。
推荐的解决方案取决于您的需求,我正在使用两个带有大型 EBS 和复制的 gluster 卷的 EC2 实例,这些实例安装在我的所有应用程序服务器上。它运作良好。
| 归档时间: |
|
| 查看次数: |
622 次 |
| 最近记录: |