Costa Rica
Last updated: 2025-10-23
List of References (Click to expand)
- Choose an Azure compute service (Decision Tree)
- Free, Standard, and Premium pricing tiers for Azure Kubernetes Service (AKS)
- AKS long-term support
- AKS pricing details
- Azure Pricing Calculator
- Azure managed disk types
- Disk type comparison
- Microsoft Sales and Support
- Microsoft Copilot in Azure (VM sizing demo video)
Table of Content (Click to expand)
Note
If you have any questions or need further clarification, please reach out to your Microsoft account team or contact Microsoft directly: Microsoft Sales and Support for additional support and guidance, or
| Component | Role |
|---|---|
| Containers | Lightweight, portable units that package code, dependencies, and runtime together. |
| Docker | Tool that builds and runs these containers locally. It lets you definemulti-container setups using docker-compose. |
| Docker Compose | Manages multiple containers on one host |
| Kubernetes (K8s) | Orchestrates containers across many hosts (nodes) |
| AKS | Azure’s managed Kubernetes handles infrastructure, scaling, and updates for you |
Monolithic → Microservices → Containerization → Orchestration This progression improves scalability, resilience, and agility for modern cloud-native applications.
Monolithic Application: A single, large application that contains all components (Recruitment Website, Job Application, Job Vacancies, Recruiters, etc) bundled together.
- The modules really rely on each other quite a bit.
- It's tricky to scale features on their own.
- Any updates mean we have to redeploy the whole app.
Transition to Microservices: The monolithic app is split into smaller, independent services (Recruiters, Job Application, Job Vacancies).
- Each service can be developed, deployed, and scaled independently.
- Easier to maintain and adopt new technologies per service.
Docker: Each microservice is packaged into application containers using Docker.
- Provides portability across environments.
- Ensures consistency between development and production.
Kubernetes: Containers are deployed and managed in a Kubernetes cluster (K8s).
- Handles orchestration: scaling, load balancing, self-healing.
- Enables automated deployments and rolling updates.
Typical Flow:
- Build image → Push to ACR
- Choose deployment service:
- AKS (more flexible orchestration)
- Container Apps (simpler, serverless)
- ACI (quick jobs)
- Add storage if needed
- Configure networking, scaling, monitoring
1. Azure Container Registry (ACR) (Click to expand)
This is where you store your container images (like Docker images). Think of it as your private container image repository.
- When to use: Almost always if you’re deploying containers in Azure. You build your app locally or in CI/CD, push the image to ACR, and then other services (AKS, Container Apps, etc.) pull from it.
- Setup order: Usually first, because your deployment services need access to the images.
2. Azure Kubernetes Service (AKS) (Click to expand)
A managed Kubernetes cluster for running containerized workloads at scale.
- When to use: If you need orchestration, scaling, and advanced networking for multiple containers or microservices.
- Relation to ACR: AKS pulls images from ACR to run your pods.
- Setup order: After ACR is ready and your images are pushed.
3. Azure Container Apps (Click to expand)
A serverless container platform for microservices and apps without managing Kubernetes directly.
- When to use: If you want simplicity from management perspective and autoscaling.
- Relation to ACR: Same as AKS, pulls images from ACR.
- Setup order: After ACR.
4. Azure Container Instances (ACI) (Click to expand)
Run containers quickly without orchestration, good for short-lived tasks or simple apps.
- When to use: For lightweight workloads or batch jobs.
- Relation to ACR: Can also pull images from ACR.
5. Azure Container Storage (Click to expand)
Persistent storage for stateful containers.
- When to use: If your containers need to keep data beyond their lifecycle (e.g., databases).
- Setup order: Alongside AKS or Container Apps if needed.
6. Azure Kubernetes Service Edge Essentials (Click to expand)
On-premises Kubernetes for edge scenarios.
- When to use: If you need hybrid or edge deployments.
From Choose an Azure compute service
AKS
itself is free; you pay for:
- VMs in Node Pools (Standard vs Premium SSD, VM size)
- Networking (Azure CNI vs Kubenet)
- Storage
- Optional features (e.g., Azure Monitor, Virtual Nodes) Your
node VM size and features define cost and performance.
How determine which AKS tier (or node size/configuration) you need, you can follow these steps:
Note
Quick Way to Decide:
- If you want low cost → B-series or Spot VMs.
- If you want balanced performance → D-series.
- If you need high compute → F-series or GPU nodes.
- Estimate Resource Requirements:
- CPU & Memory per container: Check your app’s baseline usage.
- Number of containers per pod: Multi-container apps share pod resources.
- Expected traffic: Peak vs average load.
- Use AKS Recommendations:
- Enable Cluster Autoscaler and Horizontal Pod Autoscaler.
- Use Azure Advisor → It gives cost and performance recommendations based on telemetry.
Tip
Use Azure Pricing Calculator and AKS Sizing Guide:
From AKS perspective we can choose between tier for the cluster management, click here for more details about Free, Standard, and Premium pricing tiers for Azure Kubernetes Service (AKS) cluster management
| Feature | Free Tier | Standard Tier | Premium Tier |
|---|---|---|---|
| When to Use | - Experiment with AKS at no cost - New to AKS/Kubernetes |
- Production or mission-critical workloads needing high availability - Financially backed SLA |
- Mission-critical workloads requiring two years of Kubernetes version support - Highest reliability |
| Supported Cluster Types | - Dev/test clusters - Clusters < 10 nodes |
- Enterprise-grade or production workloads - Up to 5,000 nodes |
- Enterprise-grade or production workloads - Up to 5,000 nodes |
| Pricing | - Free cluster management - Pay-as-you-go for resources |
- Pay-as-you-go for resources - Standard tier cluster management pricing |
- Pay-as-you-go for resources - Premium tier cluster management pricing |
| Feature Comparison | - Recommended for clusters < 10 nodes - Supports up to 1,000 nodes - All AKS features |
- Uptime SLA enabled - Greater reliability - Supports up to 5,000 nodes - All AKS features |
- Includes all Standard tier features - Microsoft maintenance past community support |
Tip
Which Tier Should You Choose?
- Free Tier → Best for testing or learning, small clusters (<10 nodes).
- Standard Tier → Best for production workloads, SLA-backed, up to 5,000 nodes.
- Premium Tier → Best for mission-critical workloads, extended Kubernetes version support (2 years), and advanced reliability.
Note
Cost Impact as today (check last updated date):
- Free Tier: $0 for cluster management, pay for nodes only.
- Standard Tier: Adds cluster management cost (usually $0.10/hour per cluster).
- Premium Tier: Higher cluster management cost + advanced support.
E.g as today (check last updated date):
For VMs in Node Pools (Standard vs Premium SSD, VM size):
-
You can use
Microsoft Copilot in Azureto find thebest VM size for you. Click here to see the demo on how to use it. -
And, Managed OS Disks in Azure are block-level storage volumes that are automatically managed by Azure for virtual machines. Click here to read more about Azure managed disk types
From Disk type comparison
- Cluster Size & Node Pools
- Use
Virtual Nodes or Burstable VMs (B-series) for cost efficiency. Spot instances for non-critical workloads.
- Use
- Autoscaling: Enable
Cluster Autoscaler to scale nodes dynamically. - Container Registry: Use Azure Container Registry
(ACR) with geo-replication only if needed. - Networking Costs: Minimize cross-region traffic;
keep AKS and app services in same region. - Reserved Instances: For predictable workloads,
reserve VMs for 1–3 years to save up to ~57%.


