Azure 所有区域和 VM 规格均提示 NotAvailableForSubscription 时,用 CLI 区分订阅 SKU 限制、vCPU 配额与容量,并安全提交支持请求。
Azure 创建虚拟机时,如果不同区域、不同规格都显示 NotAvailableForSubscription,先不要继续随机切换区域,也不要把它直接当作 vCPU 配额不足。这个状态表示 Azure 返回的资源 SKU 对当前订阅存在限制。先确认正在使用的订阅,再用 az vm list-skus --all 查看规格的 Restrictions,同时用 az vm list-usage 单独检查配额。若多个允许区域中的大部分 VM 规格都被订阅限制,应提交 SKU/订阅可用性支持请求;若只有少数规格或可用区受限,改用当前订阅实际可用的新一代规格、可用区或区域。
本文适用于创建 Azure 虚拟机前就被阻止的现场,包括免费试用、Azure for Students 或刚升级为即用即付的订阅。下面的 CLI 命令只读取订阅、SKU 和配额,不创建资源、不收费,也不会删除数据。真正创建虚拟机后,计算、磁盘、公网 IP 和网络流量才可能计费;提交前应在“查看 + 创建”页核对预计费用。
先确认错误码和当前订阅
在 Azure 门户打开“虚拟机 → 创建 → Azure 虚拟机”,选择区域和规格。如果规格列表显示“此订阅不可用”,先到“监视 → 活动日志”或失败部署详情保存完整错误码、时间、区域、规格和 Correlation ID。不要公开订阅 ID、租户 ID 或账务资料。
在 Azure Cloud Shell 或已登录 Azure CLI 的终端执行下面的只读检查。把示例区域 eastus 换成创建页实际选择的区域:
az account show --output table
az account list --output table
az vm list-skus \
--location eastus \
--resource-type virtualMachines \
--all \
--output table
az vm list-usage --location eastus --output table
az account show 用来确认当前订阅,避免在 A 订阅看门户、却在 B 订阅运行命令。az vm list-skus 带 --all 后会显示对当前订阅受限的规格;不带这个参数可能只看到可用项。az vm list-usage 显示区域总 vCPU 与各实例系列配额。命令成功只代表查询完成,仍需按输出判断限制类型。
怎样区分订阅限制、配额和容量
| 只读结果或错误 | 代表什么 | 下一步 |
|---|---|---|
目标 SKU 的 Restrictions 为 NotAvailableForSubscription | 当前订阅在该位置或可用区不能使用该规格 | 查同区域其他规格;若大面积受限,提交 SKU/订阅可用性请求 |
list-usage 的区域总 vCPU 或实例系列已到上限 | 配额不足;已停止但未解除分配的 VM 仍可能计入 | 删除不再需要的资源或申请提高对应区域、系列配额 |
| SKU 无订阅限制、配额也足够,但部署提示容量不足 | 目标区域或可用区当时没有足够物理容量 | 改用同代相近规格、其他可用区或业务允许的其他区域 |
| 只有某个可用区受限 | 限制范围是 Zone,不代表整个区域不可用 | 选择输出中未受限的可用区,或取消固定可用区后重新验证 |
| 所有允许区域的大部分 VM SKU 都受限 | 更接近订阅 Offer、资格或 SKU 准入问题 | 停止反复试建,准备证据并联系 Azure 支持 |
Azure 官方把配额和容量分开:配额是订阅被允许使用多少 vCPU 或 VM,容量是 Azure 在某个区域或可用区当时能否提供该资源。NotAvailableForSubscription 也不能仅靠提高 vCPU 数量解释。先看 SKU 限制,再看配额,最后才根据部署错误判断容量,能避免提交错误类型的请求。
只有部分规格受限时怎么选
先从 Restrictions 为空的规格中选择,再核对 CPU 架构、内存、磁盘、网络和镜像兼容性。不能因为 B1s 不可用,就随意改成任意更大的实例。对普通小型 Linux 网站,可先比较同区域可用的较新 B 系列或 D 系列小规格;对 Windows、数据库或持续高 CPU 负载,要按实际内存、磁盘吞吐和许可成本选择。
如果旧一代 v1—v4 规格受限,优先检查是否存在满足镜像和区域要求的新一代规格,但不要把“换 v5/v6/v7”写成所有订阅都有效的保证。CLI 输出才是当前订阅、当前区域的判断依据。更换区域还会改变延迟、数据驻留、出站流量和灾备设计;生产业务不能只为绕过创建错误就迁到陌生区域。
所有规格都受限时如何提交支持请求
在 Azure 门户顶部选择“帮助和支持 → 创建支持请求”。问题类型选择“服务和订阅限制(配额)”或门户当前提供的 SKU/订阅可用性分类,并选择发生问题的订阅。Azure 官方说明,订阅管理、配额调整和账户转移属于可提交的支持范围;创建请求需要订阅级 Owner、Contributor、Support Request Contributor 或具有相应 Microsoft.Support 权限的自定义角色。
工单至少附上以下脱敏信息:
- 错误发生的 UTC 时间、区域、可用区和目标 VM 规格;
- 错误码、完整错误消息与 Correlation ID;
az account show确认的订阅类型,但遮挡订阅 ID;az vm list-skus --all中受限规格的代表性输出;az vm list-usage的配额使用情况;- 已尝试的区域和规格,以及业务必须使用这些位置的原因。
如果订阅刚从 Free Trial 升级为 Pay-As-You-Go,还应写明升级完成时间和门户显示的当前 Offer 状态。不要反复创建失败资源来等待状态变化;支持人员需要的是同一订阅下可复核的 SKU 与配额证据。
怎样验证恢复,并保留回退路径
限制调整或选择新规格后,先重新运行同一组只读命令。目标规格的 Restrictions 应不再包含当前区域或可用区的订阅限制,配额剩余量应覆盖计划 vCPU。然后只创建一台最小验证 VM,在“查看 + 创建”页再次核对区域、规格、磁盘、公网 IP 和预计费用。
验证机启动后检查“概览 → 运行状态”、启动诊断和远程连接,再决定是否部署业务。若创建失败,不要删除仍需取证的部署记录;保留错误后删除空资源组或未使用磁盘、公网 IP,避免产生无效费用。若临时换区域或规格导致延迟、兼容性或成本不符合要求,停止继续扩容并回到原设计,等待支持请求处理;不要把临时替代规格直接当作长期架构。
与现有选型和账户流程的关系
本问题发生在 Azure 资源 SKU 对订阅的可用性层,不等于账户充值失败,也不是操作系统内部故障。需要先判断实例类型时,可参考云服务器实例族选型;需要比较 Azure 与其他国际云平台时,可参考AWS、Google Cloud 和 Microsoft Azure 选型;区域选择还应结合香港、新加坡和日本区域判断。若账户由黑鲨云代理渠道开通,账户交付与后续充值边界见Microsoft Azure 代理开户与充值流程;云产品 SKU、配额和支持请求仍由 Microsoft Azure 官方系统判定。
官方来源与近期需求现场
- Microsoft Learn:Resolve errors for SKU not available,核验日期:2026-09-29。
- Microsoft Learn:Azure VM vCPU quotas,核验日期:2026-09-29。
- Microsoft Learn:Create an Azure support request,核验日期:2026-09-29。
- Microsoft Learn:az vm list-skus,核验日期:2026-09-29。
- Microsoft Q&A:新免费试用订阅所有 VM SKU 受限的近期现场,2026-09-23;只用于证明需求,不作为唯一技术依据。

