2015-01-09 112 views
0

我们面临着两个问题,EC2和RDS实例:如何在创建新实例时保护Amazon EC2实例的数据?

  1. 我们正在失去现有的数据,当现有EC2实例终止,并自动创建新的EC2实例。一旦我们创建Elastic Beanstalk并上传我们的应用程序文件,它将创建一个EC2实例并运行。接下来,如果我们上传任何文件到现有的EC2实例,并且如果它下降/终止,又有一个新实例正在创建并丢失旧的EC2实例的数据。

  2. 如果我们将EC2实例ip地址添加到RDS入站安全组以限制他人从其他ips访问RDS实例,那么当旧的EC2实例终止并且新的EC2实例为创建或任何其他新的ec2实例是基于负载创建的。

请为上述问题提出一些解决方案。

回答

1

如果/当实例终止,您存储在EC2中的任何数据都将丢失。您需要设计解决方案,使其不依赖临时子系统。

究竟如何,取决于你在做什么,但是例如,如果你正在托管一个web服务器,并且用户可以上传图像,最好将它们存储在S3上,而不是直接存储在EC2实例中。数据应该存储在不在EC2实例中的数据库中,因此在RDS实例或DynamoDB中,两者都可以在EC2终止和重新启动后存活。

对于访问问题,您创建一个安全组(例如,称其为sg-1234),然后在启动时使用该安全组创建每个新实例。

另外创建一个RDS安全组(例如,如果调用db-1234)并在DB-1234安全组中创建一个允许Sg-1234作为源的规则。