Aks Cost Optimization
MicrosoftOfficialCreated by Microsoft
- Skill
- Research and analysis
- Cloud and DevOps
- MIT
- No issues found
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
This skill provides a structured workflow for analyzing advanced cost efficiency in Azure Kubernetes Service (AKS) clusters. It focuses on technical placement and scheduling factors rather than high-level financial reporting. The skill guides users through evaluating Node Auto-Provisioning (NAP) readiness, bin-packing efficiency, node scaling bottlenecks, and storage costs. It is designed to be used for specific technical investigations, requiring the user to route broader cost or incident-related queries to their respective specialized skills.
What it does
- Evaluates cluster bin-packing efficiency and identifies consolidation candidates.
- Assesses readiness for adopting Node Auto-Provisioning (NAP).
- Identifies root causes for node scaling bottlenecks and blocked scale-down events.
- Analyzes storage cost and mapping configurations.
- Provides evidence-based recommendations for pool adjustments or placement changes.
- Requires explicit user approval before any cluster configuration changes.
When to use it
- When investigating inefficient resource utilization or poor bin-packing in an AKS cluster.
- When evaluating whether to migrate from fixed node pools or Cluster Autoscaler to NAP.
- When troubleshooting persistent node scaling bottlenecks or blocked scale-down operations.
- When analyzing storage-related costs within an AKS environment.
Advantages
- Provides deep technical insights into scheduling and placement constraints.
- Prevents conflicting recommendations by routing to specialized skills for financial or incident data.
- Ensures safe operations by requiring manual approval for all proposed changes.
- Uses standardized evidence collection for consistent analysis across clusters.
Usage examples
- “Analyze why my AKS cluster is failing to scale down nodes.”
- The agent will investigate blocked scale-down events, check for PDBs or disruption budgets, and identify if the nodes are managed by NAP or CAS to provide a resolution path.
- “Is my cluster ready for Node Auto-Provisioning?”
- The agent will perform an eligibility check, verify current networking and identity configurations, and report if NAP is a viable and cost-effective alternative for your workload.
Install
Download the skill as a ZIP:
https://mp-staging.autogineer.com/agent-skills/microsoft/aks-cost-optimization/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip aks-cost-optimization.zip -d .agents/skills
Documentation by Microsoft
AKS Cost Optimization
When to Use This Skill
Use for advanced existing-cluster analysis requiring scheduling, placement, or
verified storage mapping. Route overall AKS cost assessments to
azure-kubernetes, spend/anomalies to cost-analysis, commitments to
cost-optimization, and incidents to aks-troubleshooting when those skills are available. When called from an overall assessment, return findings for its ranked report.
MCP Tools
Prefer fitting Azure MCP reads. Never invent tools or use az/kubectl
without approved shell access and a target-bound context.
Workflow/Steps
Bind the subscription, cluster, resource group, and kube context.
Route to NAP readiness, bin-packing, node-scaling bottlenecks, or storage optimization.
When invoked for AKS commitment context, use the commitment-demand handoff and return demand evidence without benefit analysis or a transaction.
Keep reads non-mutating; require approval for every change.
Error Handling
Missing capability: analyze supplied evidence or provide a collection plan; mark dependent cost or commitment results unavailable.
Evidence conflict: mark the conclusion unconfirmed.
Files
- ATTRIBUTION.mdAdded by AutoGineer989 B
- LICENSELicence file added by AutoGineer1.1 KiB
- SKILL.md1.8 KiB
- references/aks-bin-packing.md3.8 KiB
- references/aks-nap.md3.2 KiB
- references/aks-savings-plans-reservations.md3.5 KiB
- references/aks-storage-optimization.md3.5 KiB
- references/bin-packing-evidence.md3.8 KiB
- references/nap-decisions.md3.3 KiB
- references/nap-enablement-and-rollback.md1.8 KiB
- references/nap-evidence-collection.md3.9 KiB
- references/node-scaling-bottlenecks.md3.8 KiB
- references/self-hosted-karpenter-migration.md2.1 KiB
- references/storage-container-insights.md2.9 KiB
- references/storage-decisions.md3.3 KiB
- references/storage-metrics.md3.7 KiB
references/aks-storage-optimization.md
AKS Storage Optimization
Reduce AKS persistent-volume and disk cost without weakening durability or performance. Never delete, migrate, change tier/redundancy, or recreate a node pool without explicit approval.
This workflow provides detailed rightsizing for Azure Disk CSI volumes and snapshots. For Azure Files or Blob CSI volumes, first verify the Kubernetes-to-Azure mapping, then invoke cost-optimization when available for service-specific lifecycle, tier, and pricing analysis. Use azure-storage for non-cost configuration guidance.
Collect Evidence
Bind the cluster and kube context. Prefer a fitting host-advertised Azure MCP AKS read. Use the following command only with approved shell access; use
kubectlonly when the bound context is available:
az aks show --name "<cluster-name>" --resource-group "<resource-group>" \
--query "{id:id,nodeResourceGroup:nodeResourceGroup,location:location,workspace:addonProfiles.omsagent.config.logAnalyticsWorkspaceResourceID}" \
-o jsonCollect the Kubernetes storage graph:
kubectl get pvc,pv,storageclass --all-namespaces -o jsonMap PVC -> PV -> StorageClass -> spec.csi.volumeHandle. Retain PVC/PV UIDs, requested capacity, status, claim reference, provisioner, SKU, reclaim policy, access modes, and volume binding mode; distinguish Azure Disk, Files, and Blob CSI volumes.
Query Resource Graph for
microsoft.compute/disksandmicrosoft.compute/snapshotswhen the resource is in the node resource group, its ID matches a PV volume handle, or its snapshot source is a mapped disk. Project ID, name, resource group, location, SKU, size, disk state,managedBy, creation time, snapshot source ID, provisioned IOPS/throughput, and tags. Compare exact case-insensitive resource IDs with PV volume handles, then classify each resource under the applicable path:Mapped-volume optimization: classify the mapping as verified, ambiguous, or broken. For a mapped-volume candidate, require an exact verified PVC -> PV -> Azure resource mapping before recommending deletion or tier/capacity changes, attributing cost, or estimating savings.
Orphan investigation: a disk without a PV is expected to be unmapped. Require its exact Azure resource identity; cluster and owner provenance from resource group, creation history, and tags; no attachment; an exhaustive check for Kubernetes volume handles and Azure compute, snapshot, backup, restore, and other references; and owner confirmation of backup and recovery requirements. Only then classify it as a verified orphan candidate. Ambiguous identity, provenance, ownership, or references blocks cleanup advice.
If
cost-analysisis available in the host skill inventory, invoke it to retrieve billedActualCostgrouped byResourceIdfor verified mapped resources and verified orphan candidates at the smallest applicable scope. Correlate only exact resource IDs. If the skill or required cost data is unavailable, continue with utilization and performance evidence, report attributable cost and monetary savings as unavailable rather than zero.For active verified Azure Disk mappings, use storage metrics for binding-scoped capacity, IOPS, throughput, latency, and throttling evidence. Retain identity/interval verification, coverage/gaps, units, aggregation basis, and capacity changes per disk. Missing, sparse, ambiguous, or unrepresentative history means unknown utilization, not zero.
After collecting applicable evidence, use storage decisions to classify candidates and recommend changes.
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Needs: Needs Node.js
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- Microsoft
- Publisher
- Microsoft (Official)
- Source
- microsoft/skills · .github/plugins/aks-skills/skills/aks-cost-optimization · commit 0696600
- Licence
- MIT License (redistribution allowed)
- LICENSE (added by AutoGineer from .github/plugins/aks-skills/LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by Microsoft.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download aks-cost-optimization.zip