Skip to main content
CloudIntermediate18 min readUpdated March 2025

AWS Core Services

EC2, S3, RDS, Lambda and VPC form the backbone of most AWS applications. Learn what each does and how they fit together.

The Core Five

Hundreds of AWS services exist, but a handful power the majority of workloads:

  • EC2 — Resizable virtual machines. You choose the instance type, OS and storage.
  • S3 — Durable object storage for files, backups, logs and static sites.
  • RDS — Managed relational databases (PostgreSQL, MySQL, SQL Server) with backups and failover handled for you.
  • Lambda — Run code in response to events without managing servers.
  • VPC — The private network that ties everything together.

Launching an EC2 Instance

With the AWS CLI you can launch a virtual machine in one command. The instance is placed in a subnet, protected by a security group and accessed with a key pair:

bash
aws ec2 run-instances \
  --image-id ami-0abcdef1234567890 \
  --instance-type t3.micro \
  --key-name my-key \
  --security-group-ids sg-0123456789abcdef0 \
  --subnet-id subnet-0123456789abcdef0 \
  --tag-specifications 'ResourceType=instance,Tags=[{Key=Name,Value=web-server}]'

# Check its state
aws ec2 describe-instances \
  --filters "Name=tag:Name,Values=web-server"  --query"Reservations[].Instances[].State.Name"

Working with S3

S3 stores objects in buckets. Use lifecycle rules to move old data to cheaper storage classes automatically, and generate pre-signed URLs to share private files temporarily:

python
import boto3

s3 = boto3.client("s3")

# Upload a file
s3.upload_file("report.pdf", "my-company-data", "reports/report.pdf")

# Share it privately for 15 minutes
url = s3.generate_presigned_url(
    "get_object",
    Params={"Bucket": "my-company-data", "Key": "reports/report.pdf"},
    ExpiresIn=900,
)
print(url)

Choosing Compute and Database Options

Pick the simplest option that meets your needs:

  • Steady, long-running workloads: EC2 or containers on ECS/EKS.
  • Spiky, event-driven work: Lambda.
  • Relational data with transactions: RDS or Aurora.
  • Key-value data at massive scale: DynamoDB.

Key Takeaways

  • EC2, S3, RDS, Lambda and VPC cover most application needs.
  • The CLI and SDKs let you automate everything you can click in the console.
  • Pre-signed URLs share private S3 objects safely and temporarily.
  • Choose managed services to reduce operational work.

Contact Us

Have a question or feedback? Fill out the form below or reach us directly at support@nvaitraining.com