Guide G10 · DevOps path
The Tooling Landscape: Alternatives and the Multi-Cloud Map
The courses teach one main tool per job. This guide maps the alternatives you'll meet in job descriptions (OpenTofu, Pulumi, CDK/CloudFormation, Terragrunt, Atlantis; Tekton, Argo Workflows, Spinnaker, Azure DevOps; Podman, Buildah, Kaniko) and translates AWS services to Azure and GCP.
Start here
The mental model
Tools change every few years; the jobs they do don't. Once you understand the JOB (define infrastructure as code, run a pipeline, build an image, reconcile a cluster from Git), learning another tool for the same job takes days, not months. This guide is a translation table: when a job ad or a new team uses a tool you haven't seen, find its job here and map it to what you already know.
Go deeper
How it works inside
01Infrastructure as code
TERRAFORM (HCL, huge provider ecosystem, BSL licence since 2023) and OPENTOFU (the open-source fork under the Linux Foundation, drop-in compatible, with extras like state encryption) are the default. CLOUDFORMATION is AWS-native YAML/JSON with no state file to manage (AWS keeps it), and AWS CDK generates CloudFormation from TypeScript/Python/Java. PULUMI uses general-purpose languages (TypeScript, Python, Go, Java) against its own state, attractive to developer-heavy teams. Crossplane does IaC as Kubernetes controllers (Platform course, Stage 2).
Around Terraform: TERRAGRUNT keeps many environments DRY (shared backend config, dependencies between stacks); ATLANTIS, Spacelift, env0, and HCP Terraform run plans and applies from pull requests with locking and policy. Your Terraform course CI pipeline (Stage 7) is the do-it-yourself version of the same idea.
02CI/CD engines
GITHUB ACTIONS, GITLAB CI, and JENKINS are covered in the CI/CD course. Others you'll meet: AZURE DEVOPS PIPELINES (common in Microsoft shops; YAML stages and jobs, same concepts), CIRCLECI and BUILDKITE (hosted orchestration, self-hosted agents), TEKTON (Kubernetes-native CI with Tasks and Pipelines as CRDs), ARGO WORKFLOWS (DAGs of containers on Kubernetes, used for CI and data/ML pipelines), SPINNAKER (multi-cloud continuous delivery with deployment strategies, largely superseded by GitOps plus Argo Rollouts for new setups), and AWS CODEPIPELINE/CODEBUILD. Every one of them is a way to express 'trigger → stages → jobs → steps', with secrets and artifacts.
03Containers and clusters
PODMAN is a daemonless, rootless Docker-compatible CLI (alias docker=podman mostly works) and the default on RHEL; BUILDAH builds OCI images without a daemon; KANIKO and BuildKit build images inside Kubernetes or CI without privileged Docker-in-Docker (Docker course, Docker in CI/CD). Kubernetes distributions: EKS, AKS, GKE (managed), OPENSHIFT (Red Hat's enterprise platform with built-in builds, routes, and stricter security defaults), Rancher/RKE2, k3s (lightweight, edge), and kind/minikube (local). Nomad (HashiCorp) is a simpler scheduler alternative to Kubernetes.
04Observability, security, and GitOps alternatives
Observability: Datadog, New Relic, Dynatrace, and Elastic Observability are commercial all-in-ones; Grafana Cloud hosts the open-source stack; Victoria Metrics, Mimir, and Thanos scale Prometheus. Security scanning: Snyk, Prisma Cloud, Wiz, Aqua (commercial) alongside Trivy, Grype, Semgrep, and Checkov (open source). GitOps: Argo CD and Flux (GitOps course). Secrets: Vault/OpenBao, cloud secret managers, Doppler, Infisical (Guide G8).
Do it
Hands-on lab
- 1
The same S3 bucket in three IaC tools
Seeing one resource in several tools makes the shared concepts obvious: resource type, properties, and outputs.
bucket-three-ways.txtwhole filetext # Terraform / OpenTofu (HCL) resource "aws_s3_bucket" "uploads" { bucket = "shoplite-uploads-dev" tags = { owner = "team-storefront" } } # AWS CloudFormation (YAML) Resources: Uploads: Type: AWS::S3::Bucket Properties: BucketName: shoplite-uploads-dev Tags: [{ Key: owner, Value: team-storefront }] # Pulumi (TypeScript) import * as aws from "@pulumi/aws"; const uploads = new aws.s3.Bucket("uploads", { bucket: "shoplite-uploads-dev", tags: { owner: "team-storefront" }, }); - 2
Switch Terraform to OpenTofu
For most projects, OpenTofu reads the same code and state. Test on a copy of the state first.
terminal$ tofu init -upgrade && tofu plan── expected output ──OpenTofu has been successfully initialized!...No changes. Your infrastructure matches the configuration.
Decide
AWS ↔ Azure ↔ Google Cloud service map
| Job | AWS | Azure | Google Cloud |
|---|---|---|---|
| Virtual machines | EC2 | Virtual Machines | Compute Engine |
| Autoscaling VMs | Auto Scaling groups | VM Scale Sets | Managed Instance Groups |
| Managed Kubernetes | EKS | AKS | GKE |
| Serverless containers | ECS Fargate / App Runner | Container Apps | Cloud Run |
| Functions | Lambda | Azure Functions | Cloud Run functions |
| Object storage | S3 | Blob Storage | Cloud Storage |
| Block storage | EBS | Managed Disks | Persistent Disk |
| Managed PostgreSQL/MySQL | RDS / Aurora | Azure Database for PostgreSQL/MySQL | Cloud SQL / AlloyDB |
| NoSQL key-value | DynamoDB | Cosmos DB | Firestore / Bigtable |
| Cache | ElastiCache / MemoryDB | Azure Cache for Redis | Memorystore |
| Queue / pub-sub | SQS / SNS / EventBridge | Service Bus / Event Grid | Pub/Sub / Eventarc |
| Managed Kafka | MSK | Event Hubs (Kafka API) | Managed Service for Apache Kafka |
| Networking | VPC, subnets, security groups | VNet, subnets, NSGs | VPC (global), subnets, firewall rules |
| Load balancer (L7) | ALB | Application Gateway / Front Door | Cloud Load Balancing (HTTP(S)) |
| DNS / CDN | Route 53 / CloudFront | Azure DNS / Front Door | Cloud DNS / Cloud CDN |
| Identity & access | IAM, Identity Center | Entra ID, RBAC | Cloud IAM |
| Secrets / keys | Secrets Manager / KMS | Key Vault | Secret Manager / Cloud KMS |
| Container registry | ECR | Azure Container Registry | Artifact Registry |
| Monitoring / logs | CloudWatch | Azure Monitor / Log Analytics | Cloud Monitoring / Cloud Logging |
| Audit trail | CloudTrail | Activity Log | Cloud Audit Logs |
| Native IaC | CloudFormation / CDK | ARM / Bicep | Infrastructure Manager (Terraform) |
The bigger picture
Connects to
Prove it
Interview questions
Terraform vs CloudFormation vs Pulumi?
You know AWS; the new job uses Azure. How do you ramp up?