Amazon Web Services
Compute
- AWS EC2
- EC2 Instance Types
- EC2 Pricing Models
- EC2 Auto Scaling
- Elastic Load Balancing-ELB
- AWS Lambda – Serverless Computing
- Amazon Lightsail
- AWS Elastic Beanstalk
- AWS Fargate
- Amazon ECS (Elastic Container Service)
- Amazon EKS (Elastic Kubernetes Service)
Storage
- S3 vs. EBS vs. EFS
- Amazon S3 (Simple Storage Service)
- Amazon S3 Storage Classes
- Amazon EBS (Elastic Block Store)
- Amazon EFS (Elastic File System)
- AWS Storage Gateway
- AWS Snowball
- Amazon FSx
- AWS Backup
Database Services
- Amazon RDS
- Amazon Aurora
- Amazon DynamoDB
- Amazon ElastiCache
- Amazon Redshift
- AWS Database Migration Service (DMS)
- Amazon Neptune
- Amazon DocumentD
Networking and Content Delivery
- Amazon VPC
- Subnets
- Internet Gateway
- AWS Direct Connect
- AWS Route 53
- AWS CloudFront
- AWS Transit Gateway
- Elastic IP Addresses
DynamoDB
- DynamoDB Global Table vs Regular DynamoDB Table
- DynamoDB Streams
- Athena query data to DynamoDB
- Athena Query Results with DynamoDB
- PySpark DataFrame to DynamoDB
Redshift
Lambda
Glue
Lambda
Security
🌐 Amazon VPC (Virtual Private Cloud) – Your Isolated Cloud Network
When you deploy resources in the cloud, you don’t want them sitting in a public, shared network. You want control, security, and isolation—just like you would in your own data center.
That’s where Amazon VPC (Virtual Private Cloud) comes in.
Amazon VPC gives you a logically isolated section of the AWS cloud where you can define your own networking environment. You choose:
- IP address ranges
- Subnets (public/private)
- Route tables
- Internet gateways / NAT gateways
- Security groups & network ACLs
With VPC, AWS gives you the flexibility of a traditional data center without the headaches of physical networking equipment.
⚙️ Key Features of Amazon VPC
- Network Isolation – Each VPC is isolated from other VPCs and accounts.
- Customizable IP Ranges – Use CIDR blocks to define your own IP space.
- Subnets – Divide VPC into public/private areas.
- Connectivity Options – Internet Gateway, VPN, Direct Connect, Transit Gateway.
- Security Layers – Security groups (firewall at instance level) and NACLs (subnet level).
- Elastic IPs & NAT Gateway – Allow outbound internet while keeping private resources hidden.
- Peering & VPC Endpoints – Connect to other VPCs and AWS services securely.
- High Availability – Deploy subnets across multiple Availability Zones.
🗂️ Common Use Cases
Use Case | Description |
---|---|
Web Applications | Public-facing web servers in public subnets, databases in private subnets. |
Hybrid Networking | Connect on-premises data centers with AWS via VPN or Direct Connect. |
Multi-Tier Applications | Separate app, DB, and caching layers into isolated subnets. |
Secure Data Processing | Run private compute workloads with no internet access. |
Microservices Deployment | Isolate services into different subnets for better security. |
🛠️ Programs
✅ Create a VPC
import boto3
ec2 = boto3.client('ec2')
# Create a VPC with a CIDR blockresponse = ec2.create_vpc(CidrBlock='10.0.0.0/16')
vpc_id = response['Vpc']['VpcId']print(f"Created VPC with ID: {vpc_id}")
# Add a Name tagec2.create_tags(Resources=[vpc_id], Tags=[{"Key": "Name", "Value": "MyVPC"}])print("Tagged VPC as MyVPC")
Use Case: Start by creating a custom isolated network for your application.
✅ Create a Public Subnet and Internet Gateway
# Create Subnetsubnet = ec2.create_subnet( VpcId=vpc_id, CidrBlock='10.0.1.0/24', AvailabilityZone='us-east-1a')subnet_id = subnet['Subnet']['SubnetId']print(f"Created Subnet: {subnet_id}")
# Create Internet Gatewayigw = ec2.create_internet_gateway()igw_id = igw['InternetGateway']['InternetGatewayId']print(f"Created IGW: {igw_id}")
# Attach IGW to VPCec2.attach_internet_gateway(InternetGatewayId=igw_id, VpcId=vpc_id)print("Attached IGW to VPC")
Use Case: Enable your subnet to host public-facing resources like web servers.
✅ Launch an EC2 Instance in the VPC
# Launch EC2 instance inside VPC subnetinstance = ec2.run_instances( ImageId='ami-0c55b159cbfafe1f0', # Example Amazon Linux AMI InstanceType='t2.micro', MaxCount=1, MinCount=1, NetworkInterfaces=[{ 'SubnetId': subnet_id, 'DeviceIndex': 0, 'AssociatePublicIpAddress': True }], TagSpecifications=[{ 'ResourceType': 'instance', 'Tags': [{'Key': 'Name', 'Value': 'MyVPC-Instance'}] }])
print("EC2 instance launched in custom VPC")
Use Case: Deploy compute resources inside your secure VPC environment.
🧠 How to Remember Amazon VPC for Exams & Interviews
-
Acronym “VIPC”
- V – Virtual isolation
- I – Internet / Internal routing control
- P – Private & public subnets
- C – Customizable networking
-
Memory Trick: Think of a VPC as your “private house” in AWS. You choose the rooms (subnets), the doors (gateways), and who gets in/out (security groups).
-
Exam Hot Points:
- Difference between Security Groups vs NACLs.
- Public vs Private Subnets.
- NAT Gateway vs Internet Gateway.
- VPC Peering vs Transit Gateway.
🎯 Why It Is Important to Learn Amazon VPC
- Foundation of AWS Networking – Almost every AWS service runs inside a VPC.
- Security & Compliance – Isolation and access control are critical for enterprises.
- Hybrid Cloud Adoption – Companies integrate on-premises networks with VPC.
- Exam Relevance – Appears heavily in AWS Solutions Architect, SysOps, and Security Specialty exams.
- Real-World Usage – Without VPC knowledge, you cannot design secure AWS architectures.
🔒 Best Practices
- Use least privilege with security groups.
- Separate workloads using multiple subnets.
- Always deploy across multiple Availability Zones.
- Use VPC Flow Logs to monitor traffic.
- Prefer VPC Endpoints for private connectivity to AWS services.
📘 Conclusion
Amazon VPC is the networking backbone of AWS. It allows you to build secure, isolated environments tailored to your application’s needs.
For exams and interviews, remember:
- VPC = Your private network in AWS.
- Supports subnets, gateways, routing, and security.
- Essential for secure and scalable cloud deployments.
By mastering VPC, you gain the foundation of AWS architecture, making it easier to understand and design real-world cloud solutions.