AWS EC2 EBS 微实例存储和 Djangostack

AWS EC2 EBS 微实例存储和 Djangostack

我正在将我的个人网页移动到 Amazon EC2 免费(目前)微型实例,并且想澄清一些事情。

由于微型实例没有任何“本地存储”,当我安装 apache、django、mysql 等时,它会去哪里?它会自动转到 EBS 吗?它会保存在 RAM 中,还是其他什么地方?我推测应用程序一定有某处放置他们的文件。

EBS 究竟是如何工作的?我知道它就像一个可安装的外部驱动器,但例如,我可以在 EBS 中安装我的整个 Web 堆栈 (mysql/apache/django) 并让它在任何实例上即插即用吗?

我一直在研究 BitNami Djangostack,它可以在 EBS 上为您安装整个堆栈,然后将其插入实例。它基本上就是在 EBS 上安装 Web 服务器、数据库等,还是其他什么?数据是否也存在于 EBS 上?

答案1

AWS EC2 上的微型实例已经是所谓的 EBS 支持实例。也就是说,即使实例死亡/终止,您的数据仍应可恢复,只需重新启动服务器即可。这与非 EBS 支持的实例非常不同,在非 EBS 支持的实例中,如果实例死亡或终止,该实例上的数据将丢失。

这通常是 EBS 介入的地方,非 EBS 支持的实例可能会死机,但附加到该实例的 EBS 卷将再次可用,可以附加到新实例,并且保存在 EBS 卷上的数据也将再次可用。在某种程度上,可以将其视为 SAN 存储。

http://aws.amazon.com/ec2/

微型实例 该系列的实例提供少量的稳定 CPU 资源,并允许您在有额外周期可用时爆发 CPU 容量。它们非常适合吞吐量较低的应用程序和定期消耗大量计算周期的网站。

Micro Instance 613 MB of memory, up to 2 ECUs (for short periodic bursts), EBS storage only, 32-bit or 64-bit platform

->EBS 究竟是如何工作的?我知道它就像一个可安装的外部驱动器,但是例如,我可以在 EBS 中安装我的整个 Web 堆栈(mysql/apache/django)并让它对任何实例即插即用吗?好吧,你必须在那里安装所有的软件和所有东西,或者设置并安装一个实例,然后指向配置文件以说明所有数据都可以在此文件夹(或例如附加存储)中找到。但不是那么简单,你一次只能将一个 EBS 卷附加到单个服务器,但是你可以通过将 EBS 实例快照到 AWS S3 然后从该快照重新创建另一个 EBS 卷来创建它的克隆。还需要注意的是,EBS 卷不能在 AWS EC2 可用区(AV)之间移动,你只能将 EBS 卷附加到位于同一 AV 区域内的 EC2 实例。

但这里最基本的两件事是,如果您正在运行微型实例,则它们是 EBS 支持的,因此如果它死机了,您可以重新启动,并且一切都应该像服务器死机之前一样。或者您仍然可以创建一个 EBS 卷并将其添加到正在运行的实例以扩展您的存储空间。

无论哪种方式,您都需要不时地将快照拍摄到 S3,因为 EBS 可能会出现故障,在这种情况下,您的备份是唯一能帮助您的东西。AWS S3 的可靠性百分比要高得多。

希望能帮助到你

相关内容