Skip to content

Commit 7f2374e

Browse files
authored
Enhance AKS documentation with pricing and best practices
Added sections on choosing AKS tiers, pricing examples, and best practices for AKS deployments.
1 parent 0ae9863 commit 7f2374e

File tree

1 file changed

+87
-0
lines changed

1 file changed

+87
-0
lines changed

0_Azure/8_AzureApps/demos/1_fromMulti-containerWebApp_toAKS.md

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,93 @@ Last updated: 2025-10-23
119119
120120
</details>
121121

122+
## How to choose?
123+
124+
<img width="900" height="916" alt="image" src="https://github.com/user-attachments/assets/259cba67-0742-4ff8-b9b5-4481772c04f9" />
125+
126+
From [Choose an Azure compute service](https://learn.microsoft.com/en-us/azure/architecture/guide/technology-choices/compute-decision-tree)
127+
128+
## Pricing example
129+
130+
> AKS `itself is free`; you pay for:
131+
> - VMs in Node Pools (Standard vs Premium SSD, VM size)
132+
> - Networking (Azure CNI vs Kubenet)
133+
> - Storage
134+
> - Optional features (e.g., Azure Monitor, Virtual Nodes)
135+
> Your `node VM size and features define cost and performance.`
136+
137+
How determine which **AKS tier** (or node size/configuration) you need, you can follow these steps:
138+
139+
> [!NOTE]
140+
> Quick Way to Decide:
141+
- If you want **low cost** → B-series or Spot VMs.
142+
- If you want **balanced performance** → D-series.
143+
- If you need **high compute** → F-series or GPU nodes.
144+
145+
1. Estimate Resource Requirements:
146+
- **CPU & Memory per container**: Check your app’s baseline usage.
147+
- **Number of containers per pod**: Multi-container apps share pod resources.
148+
- **Expected traffic**: Peak vs average load.
149+
2. Use AKS Recommendations:
150+
- Enable **Cluster Autoscaler** and **Horizontal Pod Autoscaler**.
151+
- Use **Azure Advisor** → It gives cost and performance recommendations based on telemetry.
152+
153+
> [!TIP]
154+
> Use [Azure Pricing Calculator](https://azure.microsoft.com/en-us/pricing/calculator/?msockid=38ec3806873362243e122ce086486339) and **AKS Sizing Guide**:
155+
156+
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](https://learn.microsoft.com/en-us/azure/aks/free-standard-pricing-tiers)
157+
158+
| **Feature** | **Free Tier** | **Standard Tier** | **Premium Tier** |
159+
| --------------------- | -------------------------------------------------- | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
160+
| **When to Use** | - Experiment with AKS at no cost<br>- New to AKS/Kubernetes | - Production or mission-critical workloads needing high availability<br>- Financially backed SLA | - Mission-critical workloads requiring **two years** of Kubernetes version support<br>- Highest reliability |
161+
| **Supported Cluster Types** | - Dev/test clusters<br>- Clusters < 10 nodes | - Enterprise-grade or production workloads<br>- Up to 5,000 nodes | - Enterprise-grade or production workloads<br>- Up to 5,000 nodes |
162+
| **Pricing** | - Free cluster management<br>- Pay-as-you-go for resources | - Pay-as-you-go for resources<br>- [Standard tier cluster management pricing](https://azure.microsoft.com/en-us/pricing/details/kubernetes-service/) | - Pay-as-you-go for resources<br>- [Premium tier cluster management pricing](https://azure.microsoft.com/en-us/pricing/details/kubernetes-service/)|
163+
| **Feature Comparison** | - Recommended for clusters < 10 nodes<br>- Supports up to 1,000 nodes<br>- All AKS features | - Uptime SLA enabled<br>- Greater reliability<br>- Supports up to 5,000 nodes<br>- All AKS features | - Includes all Standard tier features<br>- [Microsoft maintenance past community support](https://learn.microsoft.com/en-us/azure/aks/long-term-support) |
164+
165+
> [!TIP]
166+
> Which Tier Should You Choose?
167+
> - **Free Tier** → Best for **testing or learning**, small clusters (<10 nodes).
168+
> - **Standard Tier** → Best for **production workloads**, SLA-backed, up to 5,000 nodes.
169+
> - **Premium Tier** → Best for **mission-critical workloads**, extended Kubernetes version support (2 years), and advanced reliability.
170+
171+
<img width="1198" height="392" alt="image" src="https://github.com/user-attachments/assets/97244861-fd9c-476a-9a40-d90d49c18e0c" />
172+
173+
> [!NOTE]
174+
> Cost Impact as today (check last updated date):
175+
> - **Free Tier**: $0 for cluster management, pay for nodes only.
176+
> - **Standard Tier**: Adds cluster management cost (usually $0.10/hour per cluster).
177+
> - **Premium Tier**: Higher cluster management cost + advanced support.
178+
179+
E.g as today (check last updated date):
180+
181+
<img width="1410" height="977" alt="image" src="https://github.com/user-attachments/assets/6992a004-c148-44f2-9235-4f00b988f255" />
182+
183+
For VMs in Node Pools (Standard vs Premium SSD, VM size):
184+
185+
<img width="1217" height="972" alt="image" src="https://github.com/user-attachments/assets/accbab1c-4818-46db-ba5e-22dbc4a7b5ae" />
186+
187+
- You can use `Microsoft Copilot in Azure` to find the `best VM size for you`. Click here to see the [demo on how to use it](https://www.youtube.com/watch?v=HGdhUFHnij4&t=819s).
188+
- Copilot uses your `subscription details and resource availability to recommend the most suitable VM size.`
189+
- It can also `assist with quota checks and guide you to request more capacity if needed.`
190+
191+
<img width="1910" height="1003" alt="image" src="https://github.com/user-attachments/assets/6deae8de-410f-478f-9327-a5af8b296fa3" />
192+
193+
- 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](https://learn.microsoft.com/en-us/azure/virtual-machines/disks-types)
194+
195+
<img width="1200" height="662" alt="image" src="https://github.com/user-attachments/assets/2d6773ce-45eb-4053-a1d1-791ab106d023" />
196+
197+
From [Disk type comparison](https://learn.microsoft.com/en-us/azure/virtual-machines/disks-types#disk-type-comparison)
198+
199+
## Best practices
200+
201+
- Cluster Size & Node Pools
202+
- Use `Virtual Nodes or Burstable VMs (B-series) for cost efficiency.`
203+
- `Spot instances for non-critical workloads.`
204+
- Autoscaling: Enable `Cluster Autoscaler to scale nodes dynamically.`
205+
- Container Registry: Use Azure Container Registry `(ACR) with geo-replication only if needed.`
206+
- Networking Costs: Minimize cross-region traffic;` keep AKS and app services in same region.`
207+
- Reserved Instances: For predictable workloads, `reserve VMs for 1–3 years to save up to ~57%.`
208+
122209
<!-- START BADGE -->
123210
<div align="center">
124211
<img src="https://img.shields.io/badge/Total%20views-1443-limegreen" alt="Total views">

0 commit comments

Comments
 (0)