azure-quotas

azure-quotas

热门

跨提供商检查和管理 Azure 配额及使用情况。用于部署规划、容量验证、区域选择。适用场景:"检查配额"、"服务限制"、"当前使用量"、"请求增加配额"、"配额超限"、"验证容量"、"区域可用性"、"预配限制"、"vCPU 限制"、"我的订阅中有多少可用 vCPU"。

1196Star
196Fork
更新于 2026/6/9
SKILL.md
readonly只读
name
azure-quotas
description

跨提供商检查和管理 Azure 配额及使用情况。用于部署规划、容量验证、区域选择。适用场景:\"检查配额\"、\"服务限制\"、\"当前使用量\"、\"请求增加配额\"、\"配额超限\"、\"验证容量\"、\"区域可用性\"、\"预配限制\"、\"vCPU 限制\"、\"我的订阅中有多少可用 vCPU\"。

Azure 配额 - 服务限制与容量管理

权威指南 — 请严格按照以下说明进行配额管理和容量验证。

概述

什么是 Azure 配额?

Azure 配额(也称为服务限制)是您可以在订阅中部署的最大资源数量。配额:

  • 防止意外过度预配
  • 确保 Azure 资源的公平分配
  • 代表每个区域的可用容量
  • 可以增加(可调整配额)或固定(不可调整)

关键概念: 配额 = 资源可用性

如果没有配额,您将无法部署资源。在规划部署或选择区域时,务必检查配额。

何时使用此技能

在以下情况下调用此技能:

  • 规划新部署 - 在部署前验证容量
  • 选择 Azure 区域 - 比较各区域的配额可用性
  • 排查配额超限错误 - 检查当前使用量与限制
  • 请求增加配额 - 通过 CLI 或门户提交增加请求
  • 比较区域容量 - 查找有可用配额的区域
  • 验证预配限制 - 确保部署不会超出配额

快速参考

属性 详细信息
主要工具 Azure CLI (az quota) - 始终优先使用此工具
所需扩展 az extension add --name quota(必须先安装)
关键命令 az quota listaz quota showaz quota usage listaz quota usage show
完整 CLI 参考 commands.md
Azure 门户 我的配额 - 仅作为备用
REST API Microsoft.Quota 提供程序 - 不可靠,请勿优先使用
MCP 服务器 azure-quota MCP 服务器 — 切勿使用。它不可靠。始终使用 az quota CLI。
所需权限 读者(查看)或配额请求操作员(管理)

⚠️ 始终优先使用 CLI

REST API 和门户可能显示误导性的“无限制”值 — 这意味着无限容量。这意味着配额 API 不支持该资源类型。始终从 az quota 命令开始;如果 CLI 返回 BadRequest,则回退到 Azure 服务限制文档

有关完整的 CLI 参考,请参阅 commands.md

配额类型

类型 可调整性 审批 示例
可调整 可通过门户/CLI/API 增加 通常自动批准 VM vCPU、公共 IP、存储帐户
不可调整 固定限制 无法更改 订阅范围的硬限制

重要提示: 请求增加配额是免费的。您只需为实际使用的资源付费,而非配额分配。

理解资源名称映射

⚠️ 关键: ARM 资源类型与配额资源名称之间没有一一对应关系

示例映射

ARM 资源类型 配额资源名称
Microsoft.App/managedEnvironments ManagedEnvironmentCount
Microsoft.Compute/virtualMachines standardDSv3FamilycoresvirtualMachines
Microsoft.Network/publicIPAddresses PublicIPAddressesIPv4StandardSkuPublicIpAddresses

发现工作流

切勿根据 ARM 类型假设配额资源名称。 始终使用以下工作流:

  1. 列出资源提供程序的所有配额:

    az quota list --scope /subscriptions/<id>/providers/<ProviderNamespace>/locations/<region>
    
  2. 通过 localizedValue(人类可读描述)匹配以找到相关配额

  3. 在后续命令中使用 name 字段(而非 ARM 资源类型):

    az quota show --resource-name ManagedEnvironmentCount --scope ...
    az quota usage show --resource-name ManagedEnvironmentCount --scope ...
    

📖 详细映射示例和工作流: 请参阅 commands.md - 资源名称映射

脚本

预构建脚本处理配额扩展安装、使用查询和容量计算。使用这些脚本代替手动构建命令。单次调用即可返回限制、使用量和可用容量。

脚本 用途 用法
scripts/check-quota.ps1 返回所有配额的限制、使用量和可用容量(如果提供资源名称,则返回单个配额) 配额检查的主要脚本
scripts/check-quota.sh 同上(bash) 配额检查的主要脚本

核心工作流

工作流 1:检查特定资源的配额

场景: 在部署前验证配额限制和当前使用量

使用资源提供程序和区域运行脚本。它会在单次调用中返回所有配额的表格,包含限制、当前使用量和可用容量:

.\scripts\check-quota.ps1 -ResourceProvider <provider> -Region <region>
./scripts/check-quota.sh <provider> <region>

要检查单个资源,请添加资源名称:

.\scripts\check-quota.ps1 -ResourceProvider <provider> -Region <region> -ResourceName <resource-name>
./scripts/check-quota.sh <provider> <region> <resource-name>

示例:

.\scripts\check-quota.ps1 -ResourceProvider Microsoft.Compute -Region eastus

示例输出:

资源 区域 限制 使用量 可用
cores eastus 100 50 50
standardDSv3Family eastus 350 50 300
virtualMachines eastus 25000 5 24995
... ... ... ... ...

📖 另请参阅: az quota showaz quota usage show

工作流 2:跨区域比较配额

场景: 根据可用容量找到最佳部署区域

# 定义候选区域
REGIONS=("eastus" "eastus2" "westus2" "centralus")
VM_FAMILY="standardDSv3Family"
SUBSCRIPTION_ID="<subscription-id>"

# 检查各区域的配额可用性
for region in "${REGIONS[@]}"; do
  echo "=== 检查 $region ==="
  
  # 获取限制
  LIMIT=$(az quota show \
    --resource-name $VM_FAMILY \
    --scope "/subscriptions/$SUBSCRIPTION_ID/providers/Microsoft.Compute/locations/$region" \
    --query "properties.limit.value" -o tsv)
  
  # 获取当前使用量
  USAGE=$(az quota usage show \
    --resource-name $VM_FAMILY \
    --scope "/subscriptions/$SUBSCRIPTION_ID/providers/Microsoft.Compute/locations/$region" \
    --query "properties.usages.value" -o tsv)
  
  # 计算可用量
  AVAILABLE=$((LIMIT - USAGE))
  
  echo "区域: $region | 限制: $LIMIT | 使用量: $USAGE | 可用: $AVAILABLE"
done

📖 另请参阅: commands.md 了解完整的脚本化多区域循环模式

工作流 3:请求增加配额

场景: 当前配额不足以部署

# 请求增加 VM 配额
az quota update \
  --resource-name standardDSv3Family \
  --scope /subscriptions/<subscription-id>/providers/Microsoft.Compute/locations/eastus \
  --limit-object value=500 \
  --resource-type dedicated

# 检查请求状态
az quota request status list \
  --scope /subscriptions/<subscription-id>/providers/Microsoft.Compute/locations/eastus

审批流程:

  • 大多数可调整配额会在几分钟内自动批准
  • 某些请求需要人工审核(数小时到数天)
  • 不可调整配额需要 Azure 支持工单

📖 另请参阅: az quota updateaz quota request status

工作流 4:列出所有配额以进行规划

场景: 了解某个区域中资源提供程序的所有配额

# 列出美国东部所有计算配额(表格格式)
az quota list \
  --scope /subscriptions/<subscription-id>/providers/Microsoft.Compute/locations/eastus \
  --output table

# 列出所有网络配额
az quota list \
  --scope /subscriptions/<subscription-id>/providers/Microsoft.Network/locations/eastus \
  --output table

# 列出所有容器应用配额
az quota list \
  --scope /subscriptions/<subscription-id>/providers/Microsoft.App/locations/eastus \
  --output table

📖 另请参阅: az quota list

故障排除

常见错误

错误 原因 解决方案
REST API "无限制" 误导性 — 并非无限 改用 CLI;请参阅快速参考中的警告
ExtensionNotFound 未安装配额扩展 az extension add --name quota
BadRequest 配额 API 不支持该资源提供程序 查看服务限制文档
MissingRegistration 未注册 Microsoft.Quota 提供程序 az provider register --namespace Microsoft.Quota
QuotaExceeded 部署将超出配额 请求增加或选择其他区域
InvalidScope 作用域格式不正确 使用模式:/subscriptions/<id>/providers/<namespace>/locations/<region>
CLI 命令完全失败 身份验证、扩展或环境问题 验证 Azure CLI 登录(az account show),重新安装配额扩展,检查网络。请勿使用 azure-quota MCP 服务器 — 它不可靠。

不支持的资源提供程序

已知不支持的提供程序:

确认可用的提供程序:

  • ✅ Microsoft.Compute(VM、磁盘、核心)
  • ✅ Microsoft.Network(VNet、IP、负载均衡器)
  • ✅ Microsoft.App(容器应用)
  • ✅ Microsoft.Storage(存储帐户)
  • ✅ Microsoft.MachineLearningServices(ML 计算)

📖 另请参阅: 故障排除指南

其他资源

资源 链接
CLI 命令参考 commands.md - 完整语法、参数、示例
Azure 配额概述 Microsoft Learn
服务限制文档 Azure 订阅限制
Azure 门户 - 我的配额 门户链接
请求增加配额 如何请求增加

最佳实践

  1. 始终在部署前检查配额 - 防止配额超限错误
  2. 首先运行 az quota list - 发现正确的配额资源名称
  3. 比较区域 - 查找有可用容量的区域
  4. 考虑增长 - 在即时需求基础上请求 20% 的缓冲
  5. 使用表格输出进行概览 - --output table 用于快速扫描
  6. 监控使用趋势 - 在 80% 阈值设置警报(通过门户)