我即将开始首次使用AWS。 根据我的理解,当你终止一个实例或者开始一个新实例时,所有的数据都会丢失。 对于用户数据我知道你应该使用云存储,如S3。 没关系。
那么所有的configuration呢? 假设我花了2个小时设置了所有的Apache和PHPconfiguration或者什么。 当我终止一个实例或者开始一个新的实例时,如何确保它仍然存在?
其次,我的实际应用程序,我的情况下的PHP代码,以及运行它所需的文件权限? 当我终止实例时会发生什么? 如果我有3个实例并对我的代码进行更改,该怎么办?
对于这个概念很抱歉很新。
谢谢
创build一个EBS卷并将其附加到您的实例。 安装服务(例如Apache,MySQL,PHP等)之后,将相应的文件移动到您的EBS存储中。
例如,我在我的实例上运行Ubuntu,因此每个服务的所有必要configuration信息都包含在/ etc(例如/ etc / apache2,/ etc / php等)下的相应目录中。 在将EBS卷挂载到/ vol后,将/ etc / {服务}目录移至/ vol。 所以PHP从/ etc / php5到/ vol / etc / php5。 然后我将/ etc / php5链接到/ vol / etc / php5。 MySQL中唯一的“难题”就是你也应该执行/ var / lib / mysql的实际数据目录。
现在,如果我的实例死亡或终止它,所有的configuration保存在EBS,我可以克隆或附加到任何其他实例。 由于我还在EBS卷上放置了/ var / www /,所以我的网站和他们的所有数据都在那里。
有两种types的EC2实例:(a)实例存储 – 这种types的实例在硬件硬盘上有它的根卷。 你不能停止这种types的实例,它只能被终止。 终止时,该硬盘上的所有数据都将丢失。 (b)EBS支持 – 这种types的实例在EBS卷上具有根卷。 EBS卷持久存储并远离EC2实例。 这些types的实例可以停止并重新启动,而不会丢失EBS卷中的数据。
EBS支持的实例是首选实例types,因为可以备份和还原卷以及停止和启动实例。
无论哪种情况,数据都会丢失,终止您的实例。 您可以创buildEC2实例的AMI映像,然后可以使用它们来创build实例的新副本。