Infrastructure As Code

Terraform modules, state management, environment separation, cloud provisioning.

aselimc Updated

File contents

Infrastructure as Code

Terraform Module Pattern

module "vpc" {
  source = "./modules/vpc"
  cidr   = var.vpc_cidr
  azs    = var.availability_zones
}

State Management

  • Remote backend (S3 + DynamoDB lock, GCS, Terraform Cloud)
  • One state file per environment (dev/staging/prod)
  • Never edit state manually

Environment Separation

  • Workspaces OR separate directories per environment
  • Share modules, vary variables
  • Identical infra across environments (no snowflakes)

ML Infrastructure

  • GPU instances: p3.2xlarge (V100), p4d.24xlarge (A100), p5.48xlarge (H100)
  • Spot instances for training (with checkpointing)
  • S3/GCS for artifact storage
  • VPC with private subnets for training clusters

Key Libraries

Terraform, Pulumi, AWS CDK

aselimc/agents_and_skills/tree/main/.claude/skills/infrastructure-as-code commit 85101475f2

Frequently asked questions

npx skillmds@latest add aselimc/infrastructure-as-code