我希望在AWS虚拟私有云(VPC)中实现我的网站,具有以下要求:
Web层将跨多个可用区(AZ)使用Auto Scaling组。
数据库将使用多可用区RDS MySQL,不应公开访问。
所需的最小子网数是多少?
我假设一个子网=一个AZ。话虽如此,我将需要2个子网用于RDS实例,一个用于我的Web层,可能必须位于公共子网中?总共3个最小?
答案 0 :(得分:0)
不需要3个子网。
如果你将2个子网放在不同的AZ中,1个是公共的,1个是私有的,也可以互相通信,因为在1个VPC中,多个pal的实例可以相互联系并且不同。
但是,如果您将3个子网放在不同的AZ中,因为您说这对于Web服务器的安全性和可访问性更好。
答案 1 :(得分:0)
但是,如果您将3个子网放在不同的AZ中,因为您说这对于Web服务器的安全性和可访问性更好。
答案 2 :(得分:0)
您有两种选择:
如果两个选项都需要:
此外,您创建三个安全组:
0.0.0.0/0
)的HTTP(端口80)和大概HTTPS(端口443)的入站流量选项1:在公共子网中执行所有操作
在此选项中,您可以将所有服务放在公共子网(通过Internet网关定义为连接到Internet的子网)中。 您希望实施多可用区解决方案,因此每个AZ需要一个子网。如果您选择使用两个AZ,这意味着您将需要两个子网。 (您可以选择使用两个以上的AZ /子网,如果它们在您所在的地区可用。)
在两个子网中部署负载均衡器。创建 Auto Scaling组以使用这两个子网。在两个子网中创建 Amazon RDS数据库子网组以供多可用区数据库使用,并将数据库启动到该数据库子网组。
安全组将确保只有Load Balancer才会暴露给Internet。没有其他东西可以公开访问。
选项2:使用Public&私人子网
有些人更喜欢使用私有子网来确保资源不会暴露给互联网。这主要是为了与不具有安全组概念的传统本地架构保持兼容。
此选项包括: