Is there a recommended "best practice" for deploying multi-tiered web applications into AWS as it relates to public and private subnets? Most of the documentation, including AWS' suggest public for ELB and EC2, with private for RDS. But I've also seen it suggested that public for ELB and all web and database servers in private.

1 Answer 1


Public is for services and instances that require a public IP address.

Private is for everything else.

If your web-servers are behind an ELB, you'll want them in a Private subnet.

Not the answer you're looking for? Browse other questions tagged .