根据亚马逊EC2的常见问题解答 ,当一个实例被终止时,数据不见了。 在我的实例重新启动的情况下,可以采取哪些步骤来保留数据? 我一直在研究EBS和S3 – 这些对于存储活动数据库是否有用? 无论如何重启实例的频率是多less?
像其他人所说,EBS – 弹性块存储。 我现在正在使用它,现在它被释放给大众。 它比S3多点:
到目前为止,我在EBS方面的经验是迄今为止我所处理的AWS最积极的一点。
更新:虽然我对EBS的经验是积极的,但其他人却遇到了问题。 非常特别的EBS不正确地实现fsync()。 Ted Dziuba在他的博客文章Amazon有一些有趣的话- 痛苦的目的 : 神话2:架构将拯救你免于云故障
Amazon Elastic Block Store更令人愉快,正如Redditpipe理员所发现的那样,他们会高兴地接受fsync()的调用,并且对你的脸说谎,说数据已经写入磁盘,当它没有是。
EBS肯定会用于数据库,并且是Amazon的EBS描述中的一个例子。 “Amazon EBS特别适合需要数据库的应用程序……”
EBS将像块设备一样工作(比如硬盘),使用它可以给你更宽的自由度和舒适感。 S3在概念上更像是真正快速的FTP,具有特殊的API。 你可以想象使用它作为数据库的一部分,但标准的数据库不能运行(还?)。
您需要查看亚马逊对性能(EBS> S3),耐用性(S3> EBS)和价格(取决于)的描述。
正如其他答案中提到的, EBS是永久和方便磁盘存储的标准解决scheme。 这应该是你的默认选项。 事实上,较新的EC2实例types默认使用它,而不是原始的,非持久实例存储。
但是,在考虑持久性时,还需要仔细考虑数据的可用性 (避免数据不可用的时间)和持久性 (避免数据丢失)。
EBS涵盖了基本的使用案例,但请记住:
最近的AWS中断, 2011年的这种严重的多天的失败和2012 年的 另一次 ,给出了EBS的复杂性以及中断和数据丢失的小但不可忽视的风险的一些例证。
底线:为了确保您不会丢失数据, 请在S3中保留数据备份 。 EBS快照是EBS的一个简单的方法。 如果高可用性至关重要,则还应考虑在多个可用区中使用实例存储(除EBS之外或代替EBS)。
听起来好像你担心丢失数据,那么你需要上述的EBS 。 这里有一些介绍。
到目前为止,我还没有亲自看过它,现在我只是使用S3进行备份。