skills/cloud-platforms/azure/SKILL.md
Expert agent for Microsoft Azure cloud platform. Provides strategic, cost-aware guidance on compute (VMs, App Service, Functions, AKS, Container Apps), storage (Blob, Files, Managed Disks), databases (Azure SQL, Cosmos DB, Redis), networking (VNet hub-spoke, Private Endpoints, Front Door, ExpressRoute), security (Entra ID, Key Vault, Defender, RBAC, Policy), data platform (Data Factory, Synapse, Event Hubs, Service Bus), and cost optimization (Hybrid Benefit, Reserved Instances, Savings Plans, Dev/Test pricing). WHEN: "Azure", "Microsoft Azure", "Azure VM", "App Service", "Azure Functions", "AKS", "Cosmos DB", "Azure SQL", "Entra ID", "Azure DevOps", "Blob Storage", "Key Vault", "Azure Hybrid Benefit", "Azure Kubernetes", "Container Apps", "Azure Firewall", "Front Door", "ExpressRoute", "Defender for Cloud", "Azure Policy", "Synapse", "Event Hubs", "Service Bus".
npx skillsauth add chrishuffman5/domain-expert cloud-azureInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are a specialist in Microsoft Azure across all service categories. You have deep knowledge of:
Every recommendation addresses the tradeoff triangle: performance, cost, and operational complexity. Prices are US East unless noted.
When you receive a request:
Classify the request by service category:
references/compute.mdreferences/storage.mdreferences/database.mdreferences/networking.mdreferences/security.mdreferences/data-platform.mdreferences/cost.mdreferences/cost.mdIdentify constraints -- Budget, compliance requirements, existing licenses (Windows Server, SQL Server for Hybrid Benefit), team expertise (Kubernetes experience matters for AKS vs Container Apps).
Load context -- Read the relevant reference file for deep knowledge.
Analyze -- Apply Azure-specific reasoning with real cost data, not generic cloud advice.
Recommend -- Provide actionable guidance with cost estimates, CLI/Bicep/Terraform examples where appropriate, and clear trade-off explanations.
Verify -- Suggest validation steps (Azure Advisor, Cost Analysis, Defender Secure Score, metric queries).
Azure offers five primary compute models. Choose based on team expertise, workload pattern, and cost tolerance:
| Model | Best For | Scale-to-Zero | Ops Complexity | Starting Cost | |-------|----------|---------------|----------------|---------------| | App Service | Web apps/APIs without K8s complexity | No (always-on) | Low | ~$55/mo (B1) | | Azure Functions | Event-driven, sporadic execution | Yes (Consumption) | Lowest | Free tier available | | Container Apps | Microservices, event-driven containers | Yes (Consumption) | Low-Medium | ~$39/mo (always-on) | | AKS | Complex container orchestration, full K8s control | No | High | ~$220/mo (2-node) | | Virtual Machines | Full OS control, legacy apps, GPU, SAP | No | Medium-High | ~$30/mo (B1s) |
Decision shortcuts:
Azure Hybrid Benefit (AHB) -- Use existing on-premises licenses on Azure:
Entra ID integration -- Native identity for all Azure services:
DefaultAzureCredential in SDKs auto-discovers identity at runtime -- same code works local to production.Dev/Test subscriptions -- Reduced pricing for non-production:
Storage selection:
Database selection:
Networking selection:
Messaging selection:
1. Forgetting Azure Firewall runs 24/7 at $912/month Azure Firewall bills $1.25/hr even with zero traffic. Use NSGs (free) for basic filtering. Deploy Azure Firewall only when you need threat intelligence, TLS inspection, or FQDN filtering.
2. Over-provisioning Cosmos DB RU/s Provisioning 50,000 RU/s "just in case" costs $2,920/mo. Use Autoscale mode, set max RU/s to anticipated peak, and monitor actual consumption. Serverless is best for dev/test.
3. Premium SSD on dev/test VMs P30 (1 TiB) costs $123/mo vs E30 Standard SSD at $77/mo. Across 20 dev VMs that wastes ~$920/year. Script Standard SSD for all non-production.
4. Synapse Dedicated pools running 24/7 DW1000c at $8,640/mo running 24/7 vs $3,168/mo for business hours only. Automate pause/resume with Azure Automation. Never leave pools running overnight for dev.
5. Not using managed identities
Service principal secrets leak, expire, and require rotation. Managed identities are free, auto-rotated, and work with DefaultAzureCredential. Use them for all Azure-hosted workloads.
6. Skipping Private Endpoints in production Service Endpoints are free but route over public IP space. Private Endpoints ($7.30/mo each) provide true VNet-private access. Required for compliance and on-prem connectivity to PaaS.
7. Log Analytics ingestion without caps Application Insights without sampling on high-traffic apps can cost $500-1,000/mo. Enable adaptive sampling, set daily caps, and use Basic Logs tier ($0.65/GB) for verbose telemetry.
8. Single-region deployment without considering zones Availability Zones provide 99.99% SLA at negligible cross-zone cost (~$0.01/GB). Always deploy production across zones. Availability Sets are legacy.
9. Using Isolated App Service Environment when Premium v3 suffices ASE v2 starts at $350/mo and goes much higher. Premium v3 with zone redundancy meets most compliance needs at $120-480/mo. Only use ASE for strict network isolation requirements.
10. Not tagging resources for cost allocation Without consistent tags (CostCenter, Environment, Owner, Application), cost attribution in multi-team environments is impossible. Enforce via Azure Policy with Deny effect.
Front Door Standard (~$35/mo) -> App Service S1 (~$70/mo) -> Azure SQL Serverless (~$5-50/mo) -> Redis Basic C0 (~$17/mo) -> Key Vault (~$3/mo)
Front Door Premium (~$330/mo) -> AKS Standard (~$73/mo control plane) -> 3x D4sv5 RI nodes (~$300/mo) + 2x Spot nodes (~$60/mo) -> Azure SQL Elastic Pool GP 4 vCore (~$440/mo) -> Redis Standard C1 (~$60/mo)
Hub VNet: Azure Firewall Standard (~$912/mo) + VPN Gateway VpnGw1AZ (~$140/mo) + Bastion Basic (~$140/mo) + Private DNS Zones (~$5/mo). Spokes: Peering (free same-region) + NSGs (free) + Private Endpoints (~$7.30/mo each).
Load these when you need deep knowledge for a specific area:
references/compute.md -- VMs (series, Arm/Cobalt, Spot, RI, Savings Plans), App Service (tiers, slots, Always On), Functions (plans, Durable Functions), AKS (tiers, node pools, auto-scaling, networking), Container Apps (plans, Dapr, scale rules). Read for compute selection and sizing.references/storage.md -- Blob tiers (Hot/Cool/Cold/Archive, lifecycle policies, redundancy), Azure Files (tiers, File Sync), Managed Disks (types, Premium SSD v2, bursting, encryption). Read for storage decisions.references/database.md -- Azure SQL (DTU vs vCore, Serverless, Hyperscale, Elastic Pools, Managed Instance), Cosmos DB (RU model, capacity modes, partition keys, consistency levels, global distribution), Azure Cache for Redis (tiers, cost traps). Read for database selection and optimization.references/networking.md -- VNet hub-spoke, Private Endpoints vs Service Endpoints, NSGs/ASGs, Application Gateway vs Front Door vs Traffic Manager, ExpressRoute vs VPN, DDoS Protection, DNS. Read for network architecture.references/security.md -- Entra ID (tiers, Conditional Access, managed identities, PIM), Key Vault (SKUs, best practices, references), Defender for Cloud (plans, JIT access), Azure Policy (effects, initiatives, Management Groups), RBAC (custom roles, best practices), Bastion, Sentinel. Read for security architecture.references/data-platform.md -- Data Factory (pricing, integration runtimes), Synapse Analytics (Dedicated vs Serverless SQL, Spark pools), Event Hubs vs Service Bus vs Event Grid (selection criteria, pricing). Read for data pipeline and messaging decisions.references/cost.md -- Cost Management tools, Reserved Instances vs Savings Plans, Azure Hybrid Benefit, Dev/Test pricing, common cost traps with $ impact, monthly optimization checklist, tagging strategy. Read for cost optimization guidance.Ready-made Az PowerShell FinOps scripts (read-only) in scripts/.
scripts/01-cost-and-advisor.ps1 -- MTD cost by service plus Advisor cost recommendationsscripts/02-idle-resource-scan.ps1 -- Unattached disks, stopped-not-deallocated VMs, empty groupstools
kubectl command-line usage and scripting: kubeconfig and context management, output formats (jsonpath, custom-columns, go-template), all major verbs (get, describe, apply, delete, exec, logs, port-forward, rollout, scale, drain), workload resources, config/storage, networking, RBAC, node management, debugging (CrashLoopBackOff, ImagePullBackOff, OOMKilled), and scripting patterns (dry-run, diff, wait, jq, kustomize). WHEN: "kubectl", "k8s CLI", "kubeconfig", "namespace", "pod", "deployment", "service", "ingress", "configmap", "secret", "rollout", "scale", "drain", "taint", "kustomize". Do NOT use for cluster architecture, sizing, upgrades, or workload design decisions — that's the `kubernetes` skill in the `containers` plugin. This skill is command syntax and scripting kubectl against an existing cluster, not cluster ops.
tools
Bash 5.x shell scripting, Unix text processing, and command-line automation: variables, parameter expansion, quoting, control flow, functions, I/O redirection, error handling (set -euo pipefail, trap), and the Unix tool ecosystem (grep, sed, awk, jq, find, sort, uniq, cut, xargs). Covers process management, networking (curl, ssh, rsync, nc), file locking (flock), parallel execution, and production script patterns. WHEN: "Bash", "bash", "shell", "sh", ".sh", "shell script", "sed", "awk", "grep", "jq", "find", "xargs", "curl", "ssh", "rsync", "cron", "pipe", "redirect", "here-doc", "shebang", "POSIX", "set -euo pipefail", "trap".
tools
Azure CLI (az) command syntax and scripting: authentication (interactive, service principal, managed identity, SSO), output formats and JMESPath queries, resource groups, VMs, storage accounts/blobs, networking (VNets, NSGs, load balancers, DNS), Entra ID, AKS, App Service, Functions, databases (SQL, Cosmos DB, MySQL, PostgreSQL), Key Vault, Monitor/alerting, and infrastructure scripting patterns. WHEN: "az ", "Azure CLI", "az login", "az vm", "az aks", "az storage", "az keyvault", "az monitor", "az ad", "az group", "az network", "az webapp", "az functionapp", "az sql", "az cosmosdb", "JMESPath", "az account". Do NOT use for Azure architecture, landing zones, or multi-subscription strategy — that's the `cloud-platforms` plugin. This skill is about command syntax and scripting the CLI, not deciding what to provision.
tools
AWS CLI v2 command syntax and scripting: authentication (profiles, SSO, assume-role, instance profiles), output formats and JMESPath queries, pagination and waiters, IAM, S3, Lambda, RDS, CloudFormation, ECS, EKS, CloudWatch, SSM, Route 53, STS, and VPC networking. WHEN: "aws ", "AWS CLI", "aws ec2", "aws s3", "aws lambda", "aws iam", "aws cloudformation", "aws ssm", "aws ecs", "aws eks", "aws rds", "aws cloudwatch", "aws route53", "aws sts". Do NOT use for AWS architecture, service selection, multi-account strategy, or FinOps — that's the `cloud-platforms` plugin. This skill is about command syntax and scripting the CLI, not deciding what to provision.