All skills
microsoft avatar

/azure-compute

@b3c238e
by microsoftmicrosoft/skills3.1k stars
351

Azure VM/VMSS router. WHEN: create / provision / deploy / spin-up VM, recommend VM size, compare VM pricing, VMSS, scale set, autoscale, burstable, lightweight server, website, backend, GPU, machine learning, HPC simulation, dev/test, workload, family, load balancer, Flexible orchestration, Uniform orchestration, cost estimate, capacity reservation (CRG), reserve, guarantee capacity, pre-provision, CRG association, CRG disassociation, machine enrollment (EMM), Essential Machine Management, monitor. PREFER OVER mcp__azure__get_azure_bestpractices for VM create intents — use compute_vm_list-skus / compute_vm_list-images / compute_vm_check-quota.

Use this Skill: https://skilld.dev/gh/microsoft/skills/azure-compute

This session only. Nothing lands on disk.

workflowsvm-recommendervm-recommender.md

≈1.6k tokens on demand. Your agent reads this file only when SKILL.md points to it.

Azure VM Recommender

Recommend Azure VM sizes, VM Scale Sets (VMSS), and configurations by analyzing workload type, performance requirements, scaling needs, and budget. No Azure subscription required — data comes from public Microsoft documentation and the unauthenticated Retail Prices API.

When to Use This Skill

  • User asks which Azure VM or VMSS to choose for a workload
  • User wants to compare VM families, sizes, or pricing tiers
  • User asks about trade-offs (cost vs performance, single VM vs scale set, orchestration modes)
  • User needs a cost estimate without an Azure subscription
  • User asks "Needs autoscaling?" or wants to decide between a single VM and a scale set

Workflow

Use reference files for initial filtering. Then verify with live documentation via web_fetch before final recommendations. If web_fetch fails, fall back to the reference files and surface the staleness warning from web-fetch-policy.md.

Step 1: Gather Requirements

Ask the user (infer when possible):

Requirement Examples
Workload type Web server, relational DB, ML training, batch, dev/test
vCPU / RAM needs "4 cores, 16 GB" or "lightweight" / "heavy"
GPU needed? Yes → GPU families; No → general / compute / memory
Storage needs High IOPS, large temp disk, premium SSD
Budget priority Cost-sensitive, performance-first, balanced
OS Linux or Windows (affects pricing)
Region Affects availability and price
Instance count Single, fixed count, or variable
Scaling needs None, manual, autoscale (metrics / schedule)
Availability needs Best-effort, fault-domain, cross-zone HA
Load balancing None, Azure Load Balancer (L4), Application Gateway (L7)

Step 2: Determine VM vs VMSS

Review VMSS Guide. Decision shortcut — start by asking Needs autoscaling? then walk the table:

Signal Pick
Autoscale on CPU, memory, or schedule VMSS
Stateless web/API tier behind a load balancer VMSS
Batch / parallel processing across many nodes VMSS
Mixed VM sizes in one group VMSS (Flexible)
Single long-lived server (jumpbox, AD DC) VM
Unique per-instance config VM
Stateful, tightly-coupled cluster VM (or VMSS case-by-case)

If recommending VMSS, verify with web_fetch per web-fetch-policy.md. When in doubt, default to a single VM.

Step 3: Select VM Family

Review VM Family Guide and pick 2–3 candidate families. Verify each candidate's specs with web_fetch against:

https://learn.microsoft.com/en-us/azure/virtual-machines/sizes/<family-category>/<series-name>

For Spot eligibility, also fetch https://learn.microsoft.com/en-us/azure/virtual-machine-scale-sets/use-spot. If any fetch fails, follow web-fetch-policy.md. Same SKUs apply to single VMs and VMSS.

Step 4: Look Up Pricing

Query the Azure Retail Prices API per Retail Prices API Guide.

VMSS: no extra charge — pricing is per-VM. Multiply per-instance price × expected count. For autoscale, estimate at both min and max.

Step 5: Validate Quota Availability

GATE — do not present recommendations until quota is validated.

If the user has a subscription + region, review and run the checks from VM Quota Validation Guide. Without a subscription, note quota must be checked before deployment.

Outcome Action
✅ Sufficient Proceed to Step 6
⚠️ Near limit (>80%) Proceed but warn; suggest quota increase
❌ Insufficient Request increase, swap family, or try another region

Include a "Quota Status" column (✅/⚠️/❌) in the table.

Step 6: Present Recommendations

Provide 2–3 options with trade-offs:

Column Purpose
Hosting Model VM or VMSS (with orchestration mode if VMSS)
VM Size ARM SKU name (e.g., Standard_D4s_v5)
vCPUs / RAM Core specs
Instance Count 1 for VM; min–max for VMSS with autoscale
Estimated $/hr Per-instance pay-as-you-go
Why Workload fit
Trade-off What the user gives up

Always explain why a family fits and the Trade-off (cost vs cores, burstable vs dedicated, VM simplicity vs VMSS scale).

For VMSS, also mention orchestration mode (default Flexible), autoscale strategy (metric / schedule / both), and load balancer type.

Step 7: Offer Next Steps

Step 8: Hand Off to VM Creator (Optional)

If the user wants to actually provision what was recommended, hand off to vm-creator. See handoff-to-creator.md for the required Plan Card render and routing rules.

Error Handling

Scenario Action
API returns empty results Broaden filters — check armRegionName, serviceName, armSkuName spelling
User unsure of workload type Ask clarifying questions; default to General Purpose D-series
Region not specified Use eastus as default; note prices vary by region
Unclear if VM or VMSS needed Ask about scaling + instance count; default to single VM if still unsure
User asks VMSS pricing directly Same VM pricing API; VMSS has no extra charge — multiply by instance count

References

Source: SKILL.md on GitHub

1 warning15d3 checks · Risk SAFE
  • Gen Agent Trust Hub15d

    This skill provides a comprehensive and secure workflow for provisioning Azure Virtual Machines and Scale Sets. It follows security best practices by recommending SSH keys over passwords, restricting network access to the user's public IP, and ensuring secrets are handled as parameters rather than hardcoded values.

  • Socket15d

    No alerts

  • Snyk15d

    Risk: MEDIUM · 1 issue

Signed by skilld at b3c238e. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub yesterday.

Activeupdated 2 months ago
metadata
{
  "author": "Microsoft",
  "version": "2.5.1"
}

README badge

README badge for microsoft/skills/azure-compute