我在“经典”EC2(无 VPC)中设置了一个 Amazon RDS 实例。
我还设置了一个 VPC 来保存我们较新的、迁移的应用程序等。
但是,似乎没有办法在数据库安全组中指定允许我的 VPC 实例连接的 CIDR 或 EC2 安全组组合。允许的安全组只有“经典”安全组。
我找不到任何文档表明这是不可行的,但我也找不到任何肯定的文档。谷歌搜索会得到很多“其他方式”的结果,例如 VPC 中的 RDS 实例和 EC2 中的实例。我遇到了相反的问题。
我是否需要将时间点还原到 VPC 中的新实例才能使连接正常工作?我理解我可以维持现有的公开可用性要求,但我只想暂时允许我的 VPC 实例进行连接。
答案1
如果您的 VPC EC2 实例位于私有子网中,那么要访问 EC2-Classic,您的 VPC 将需要 NAT。为您的 NAT 提供一个弹性 IP 地址,使其成为一个恒定的公共 IP 地址。
然后在您的 RDS 安全组中,仅允许该弹性 IP 地址访问。
如果您的 VPC EC2 实例位于公共子网中,那么您可以为每个实例分配弹性 IP 地址,并仅允许访问 RDS 安全组中的那些 IP 地址。如果它们是自动扩展组的一部分,这会更加困难。
答案2
我考虑做的是通过创建 AMI 并在 VPC 中重新启动机器将服务器迁移到较新的 EC2 实例。
或者,您可以将 VPC 附加到旧实例吗?如果可以,您可以使用 AWS 的“对等连接”http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide/vpc-peering-overview.html