2.4.1. Amazon VPC (Virtual Private Cloud)
💡 First Principle: Amazon VPC provides a logically isolated virtual network within AWS, giving users complete control over their network environment for launching AWS resources.
Amazon VPC (Virtual Private Cloud) allows you to provision a logically isolated section of the AWS Cloud where you can launch AWS resources in a virtual network that you define. It gives you complete control over your virtual networking environment, including selection of your own IP address range, creation of subnets, and configuration of route tables and network gateways.
Key Characteristics of Amazon VPC:
- Logical Isolation: Your VPC is isolated from other AWS users' VPCs, providing enhanced security.
- Customizable Network: Define your own IP address ranges (CIDR blocks), create subnets, and configure network gateways.
- Subnets: Subdivisions of a VPC that allow you to segment your network. You can create public subnets (for internet-facing resources) and private subnets (for internal resources).
- Route Tables: Control where network traffic from a subnet or gateway is directed. You define rules in route tables to direct traffic.
- Internet Gateway (IGW): Allows communication between your VPC and the internet.
- NAT Gateway (Network Address Translation): Allows instances in private subnets to initiate outbound internet connections while remaining isolated from inbound connections.
- Security Controls: Use Security Groups and Network ACLs for virtual firewall capabilities.
Scenario: A company needs to deploy a multi-tier web application on AWS. Web servers should be publicly accessible, but database servers must be kept private, with only outbound internet access for updates.
Reflection Question: How does Amazon VPC, by providing a logically isolated virtual network and allowing you to define public/private subnets, route tables, and gateways, fundamentally enable you to control network topology and traffic flow for your AWS resources?