- Vishakha Sadhwani
- Posts
- Cloud DevOps Essentials - Part 1
Cloud DevOps Essentials - Part 1
How does the cloud help in managing the DevOps lifecycle?

Hi Inner Circle,
If you're starting your cloud journey and preparing for DevOps interviews—you're in the right place.
One of the most common interview themes is understanding the managed services offered by major cloud providers like AWS, GCP, and Azure—and how these services map to key DevOps functionalities.
Welcome to Week 2 – today, we’ll explore Cloud DevOps Essentials today.

Here’s a quick breakdown to guide your preparation:
Cloud Infrastructure as Code (IaC)
Core Concepts
Declarative Provisioning
You describe the desired final state of your infrastructure, and the IaC tool figures out the steps to reach that state.
Example: In Terraform, you define an AWS EC2 instance in a.tf
file with specific properties, and Terraform ensures it exists exactly as declared.Cloud APIs
IaC tools interact with cloud providers (like AWS, Azure, GCP) through their APIs—using SDKs, CDKs, or REST APIs.
Tip: Programming knowledge helps when working with SDK-based or CDK-based tools like Pulumi or AWS CDK.
Example: Using AWS CDK in TypeScript to define a VPC and an ECS cluster.Idempotency
Executing the same script multiple times results in the same infrastructure state.
Example: If your script defines a Lambda function namedfoo
, running the script twice won’t create a duplicate—it will recognize it already exists and skip it or update it if needed.State Management
IaC tools track the current state of infrastructure to determine what needs to change.
Example: Terraform uses a.tfstate
file to compare your desired configuration with the real-world infrastructure and apply only the necessary changes.Versioned Cloud Resources
Infrastructure code is stored in version control (like Git), allowing collaboration, rollbacks, and change tracking just like application code.
Example: Roll back to a previous infrastructure version by reverting a Git commit and reapplying your configuration.
Popular Tools
Terraform (cloud-agnostic)
Pulumi (code-first approach using familiar languages)
AWS CloudFormation
Azure Resource Manager (ARM) / Bicep
Pick one that aligns with your team’s cloud provider and preferred syntax (YAML, JSON, or code).
Benefits
Automated cloud setup
Consistency across environments
Scalable infrastructure
Easier disaster recovery
Simplified rollbacks
Cloud CI/CD Pipelines
Core Concepts
Continuous Integration (CI)
Automatically build and test code every time changes are pushed to the repository. This ensures early detection of bugs and integration issues.
Example: Running unit tests and code linting whenever a developer commits code to themain
branch.Continuous Delivery/Deployment (CD)
Automatically deliver or deploy tested code to staging or production environments. This can include approval gates, blue/green deployments, or canary releases.
Example: After passing tests, code is deployed to a staging environment and then promoted to production.Pipeline as Code
CI/CD pipelines are defined in version-controlled files using YAML or scripts. This enables versioning, review, and collaboration.
Example: A.github/workflows/deploy.yml
file defines a GitHub Actions pipeline that builds, tests, and deploys an application.GitOps for Cloud-Native Apps
A Git-based workflow where deployments are driven by Git commits. Kubernetes and containerized apps are updated by syncing infrastructure/state with Git.
Example: ArgoCD watches a Git repo and automatically syncs Kubernetes manifests to the cluster.Automated Cloud Deployments
Automate the full software release lifecycle—from code commit to deployment—across cloud services like VMs, containers, serverless, and PaaS.
Example: Push tomain
triggers a build and deploys a Docker container to AWS ECS or Azure App Service.
Pipeline Phases
Source – Trigger the pipeline from version control (e.g., GitHub, GitLab, Bitbucket)
Build – Compile code, resolve dependencies, package the application
Test – Run automated tests (unit, integration, security, etc.)
Deploy – Release to cloud environments:
VMs (e.g., AWS EC2, GCE, Azure VM)
Containers (e.g., AWS ECS/EKS, Azure AKS, GKE)
Serverless (e.g., AWS Lambda, Azure Functions, Cloud Functions)
PaaS (e.g., Beanstalk, Google App Engine)
Popular Tools
AWS CodePipeline (integrated with CodeBuild, CodeDeploy, etc.)
Azure DevOps Pipelines (powerful YAML-based or visual pipelines)
Google Cloud Build (native GCP CI/CD)
Jenkins (open-source, highly customizable)
GitLab CI/CD (integrated with GitLab repos)
GitHub Actions (native GitHub CI/CD with marketplace actions)
Choose a tool based on your cloud provider, team expertise, and integration needs.
Benefits
Faster release cycles
Improved code quality through automation
Consistent and repeatable deployments
Easier rollback and monitoring
Enhanced developer productivity
Cloud Container Orchestration
Core Concepts
Managed Kubernetes (K8s)
Cloud providers offer fully managed Kubernetes services to simplify deployment, scaling, and management of containerized applications.
Example: Amazon EKS handles the control plane while you manage your workloads and configurations.Serverless Containers
Run containers without managing servers. Ideal for event-driven apps or sporadic workloads.
Examples: AWS Fargate, Google Cloud Run, Azure Container Apps. No need to provision or manage VMs or clusters.Pod and Service Autoscaling
Automatically adjust compute resources based on traffic or usage metrics.
Example: Horizontal Pod Autoscaler in Kubernetes increases the number of pods when CPU usage exceeds a defined threshold.
Popular Services
Amazon EKS / ECS – Elastic Kubernetes Service or Elastic Container Service
Azure AKS – Azure Kubernetes Service
Google GKE – Google Kubernetes Engine
All offer managed control planes, integration with their ecosystems, and autoscaling support.
Container Technologies
Docker – Standard for containerizing applications
Container Registries:
Amazon ECR (Elastic Container Registry)
Azure ACR (Azure Container Registry)
Google GCR / Artifact Registry
These registries store container images and integrate directly with orchestration platforms.
Key Tools
Helm – Kubernetes package manager for templating and deploying complex applications
Example: Deploy PostgreSQL with a single command using a Helm chart.Kustomize – Customize Kubernetes YAMLs without templates
Example: Reuse a base deployment YAML and overlay environment-specific configs.Service Meshes – Provide observability, traffic control, and security between microservices
Examples: AWS App Mesh, Istio, Linkerd
Use case: Secure and monitor communication between services without changing app code.
Benefits
Scalable and resilient infrastructure for microservices
Efficient resource utilization via autoscaling
Simplified operations through managed services
Consistent environments across dev, staging, and prod
Support for hybrid and multi-cloud deployments
Cloud Release Strategies
Core Concepts
Blue/Green Deployments
Two identical environments ("blue" = current, "green" = new) are maintained. Traffic is switched from blue to green once the new version is verified.
Example: Deploy a new version to the green environment, run tests, and then update the load balancer to route traffic to green.Canary Releases
Gradually release a new version to a small subset of users, monitor for issues, then incrementally increase traffic.
Example: Route 5% of traffic to the new version using AWS Application Load Balancer or Google Cloud Traffic Director.Rolling Updates
Update instances in batches, replacing the old version with the new one while maintaining service availability.
Example: Kubernetes rolling updates replace pods one at a time using the deployment controller.
Cloud Enablers
Cloud Load Balancers – Distribute traffic between old and new versions (e.g., AWS ALB/NLB, Azure Load Balancer, GCP Load Balancer)
Auto Scaling Groups – Support rolling updates and staged deployment across fleets of instances
Deployment Slots – Used in Azure App Service for staging environments and easy traffic swaps
Example: Deploy to the "staging" slot, test, then swap with production instantly.Traffic Splitting – Control what percentage of traffic is routed to each version
Example: Google Cloud Run supports traffic splitting via configuration settings.
Popular Tools
AWS CodeDeploy – Supports blue/green and canary strategies natively
Azure DevOps Releases – Integrated pipelines with deployment slots and approval gates
Spinnaker – Multi-cloud continuous delivery tool with built-in support for deployment strategies
Feature Flag Platforms – Toggle features for users without redeploying code
LaunchDarkly, CloudBees Feature Management, Flagsmith
Benefits
Minimize downtime and risk during releases
Enable rapid rollback in case of failure
Improve user experience with phased rollouts
A/B testing and experimentation enabled through traffic management
Safer cloud-native deployments using built-in platform tools
Each of these topics is essential for understanding how modern cloud-native delivery works—or at the very least, the foundational DevOps concepts you should be familiar with as you grow in your cloud engineering role.
Now, you’re not expected to build end-to-end enterprise CI/CD platforms or automate complex infrastructure just yet.
But this is where it all starts.
Projects:
Use these resources to start:
Free Resources:
Check out the github repo links here.
That’s it for today! Next week, we’ll dive into Part 2 of your Cloud DevOps journey.
See you next Thursday!
Seeking impartial news? Meet 1440.
Every day, 3.5 million readers turn to 1440 for their factual news. We sift through 100+ sources to bring you a complete summary of politics, global events, business, and culture, all in a brief 5-minute email. Enjoy an impartial news experience.