因此,我们的场景如下,我们目前在 AWS 上有一个生产环境,我们使用 VPC,并使用多个位于此 VPC 上的 EC2 服务器。为了创建一个与我们的生产环境相同的开发环境,我们希望在 AWS 上设置所有内容。但是,我们不希望我们的开发服务器能够接触到我们的生产服务器,以防有人忘记更改数据库连接字符串或类似的东西,并意外修改生产环境中的数据。
我不太了解 Amazon 的 VPC 选项,目前看来,所有服务器都连接到子网,然后有一个 NAT EC2 实例,该实例具有公共 IP,所有服务器都通过该 IP。因此,所有服务器都共享一个外部 IP 地址。
我的主要问题是,我们是否可以向我们的 VPC 添加另一个子网并将其附加到单独的 NAT 服务器,然后将所有开发服务器放在该子网上,以便它们具有不同的外部 IP 并位于不同的子网上?
答案1
对你的主要问题的回答是,是的,你可以这样做。但我不建议这样做。正如评论中所建议的,你应该把你的环境放在单独的 VPC 中。这样做,你可以确保你的环境不会互相干扰。这也应该很简单,因为你只需在新的 VPC 中启动当前环境的精确副本即可。
但是,我想更进一步。我的建议是,在一个 AWS 账户上的不同 VPC 中设置您的暂存和生产环境,并为您的开发环境创建一个新账户。这将使您更放心地在开发环境中疯狂工作(您应该这样做),并且可以确保不会影响任何重要内容。从安全角度来看,这也是一种好处,为什么所有开发人员都应该拥有生产环境的 AWS 凭证?很多糟糕的事情都会发生,问题是什么时候?合并计费也使财务工作变得轻而易举!:)