你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Azure 配额服务 API
Azure 配额服务 REST API 旨在查看和管理 Azure 资源提供程序的配额。
重要
Azure 配额服务 API 为公共预览版
新的 Azure 配额 API 版本是公共预览版。 此 API 使用 Microsoft.Quota 资源提供程序,支持 Azure 虚拟机 (cores/vCPU) 、Azure 机器学习 (专用/vCPU) 、网络、Azure HPC 缓存、存储和 Azure Purview 服务。
配额是针对 Azure 订阅中的资源设置的服务限制或限额。 每个 Azure 服务定义其配额并确定其默认值。 有关最常见的 Microsoft Azure 配额的详细信息,请参阅 Azure 订阅和服务限制、配额和约束。
使用配额 API
使用配额 API 可以:
- 获取资源的当前配额和使用情况。
- 获取所有资源的当前配额和使用情况的列表。
- 创建或更新资源的配额。
- 获取资源配额请求的状态。
- 获取资源一年的所有配额请求的列表
配额 API PUT 调用和范围
配额 API PUT 请求包含一个可以自定义的“范围”参数,以符合寻求增加配额的资源提供程序的要求,确保 API 调用保持一致。
https://management.azure.com/<scope>/Microsoft.Quota/quotas/<resourceName>?api-version=2021-03-15-preview
资源提供程序 | 范围 |
---|---|
Microsoft.Compute | subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{azure location} |
Microsoft.HDInsight | subscriptions/{subscriptionId}/providers/Microsoft.HDInsight/locations/{azure location} |
Microsoft.MachineLearningService | subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningService/locations/{azure location} |
Microsoft.Network | subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{azure location} |
Microsoft.Purview | subscriptions/{subscriptionId}/providers/Microsoft.Purview/locations/{azure location} |
注意:可 在此处找到计算的 PUT 调用示例。
先决条件
重要
在使用配额 API 之前,必须:
- 使用 PowerShell 为所有订阅注册 Microsoft.Quota 资源提供程序。
- 将 配额请求操作员 角色分配给将执行配额操作的所有用户帐户和应用程序。
注册 Microsoft 配额资源提供程序
若要注册 Microsoft 配额资源提供程序,请使用以下 PowerShell 命令:
Register-AzResourceProvider -ProviderNamespace Microsoft.Quota
它返回类似于以下输出的结果:
ProviderNamespace : Microsoft.Quota
RegistrationState : Registering
ResourceTypes : {usages, quotas, quotaRequests, operationsStatus...}
Locations : {West Europe, East US, South Central US...}
注册 Microsoft.Quota 资源提供程序后, RegistrationState
将设置为 Registered
。 有关管理 Azure 资源提供程序的详细信息,请参阅 Azure 资源提供程序。
遏制
如果发送过多的 API 请求,可能会限制每个订阅级和租户级 API 调用。 如果 API 调用受到限制,则会收到一条错误消息,指出服务器拒绝了 API 请求。 可以在经过一段时间后重试 API 调用。
有关 API 限制、如何排查限制问题以及如何避免受限制的详细信息,请参阅 排查 Azure 中的限制错误。
配额请求操作员角色
配额请求操作员是为配额操作自定义的 Azure 内置角色。 它授予读取和创建配额请求、获取配额请求状态以及创建支持票证的权限。 将此角色分配给执行配额操作的用户、组、服务主体、托管标识和应用程序。 供参考,配额请求操作员角色 ID 为 0e5f05e5-9ab9-446b-b98d-1e2157c94125。
配额请求操作员角色已扩展为包括配额资源提供程序权限。
配额 API 最佳做法
监视配额利用率: 利用 Azure 配额 API 有效跟踪配额使用情况。 此 API 提供有关当前使用情况的实时信息,以及订阅、VM 系列和区域的特定组合的可用配额。 在考虑增加配额之前,必须定期检查配额利用率。
请求增加配额: 如果配额利用率超过预定义目标,请使用 Azure 配额 API 发起配额增加请求,使利用率与目标重新一致。 此过程非常简单 - 只需提交一个 API 请求,其中概述了所需的配额增加。 例如,如果在“subscription1”下,欧洲北部的 Dv2 VM 系列配额的目标利用率设置为 80%,并且 Azure 配额 API 监视指示实际利用率为 85%,则提交配额增加 10% 至 20%。
提示
建议请求增加 10% 到 20% 的资源配额,因为它为资源使用量的意外高峰提供一个共鸣缓冲区,确保在增加配额后不会立即达到新的配额限制。 此方法最大限度地减少了频繁的 API 调用来请求额外配额的需求,从而提高获得批准的机会。
- 配额增加重新暂停: 提交配额增加请求后,你将收到一个响应,指示你的请求是已批准还是已拒绝。 如果被拒绝,可以通过使用 Azure 支持 REST API 或Azure 门户中的新支持请求(包括拒绝配额增加请求的详细信息和查询原因)记录支持请求来启动跟进。
排查配额 API 错误
使用下表对使用配额 API 时可能遇到的错误进行故障排除。
错误代码 | 如何解决该问题 |
---|---|
ContactSupport | 在Azure 门户中打开新的支持请求。 在 “选择问题类型”下,选择 “服务和订阅限制” (配额) 。 还可以使用 Azure 支持 REST API 以编程方式打开它。 |
InternalServerError | 内部服务器错误。 请稍后重试 API 调用。 |
MissingRegistration | 为每个订阅注册 Microsoft.Quota 资源提供程序。 有关故障排除指南,请参阅 解决资源提供程序注册错误。 |
QuotaNotAvailableForResource | 配额当前在所请求资源的位置不可用。 在Azure 门户中打开新的支持请求。 在 “选择问题类型”下,选择 “服务和订阅限制” (配额) 。 还可以使用 Azure 支持 REST API 以编程方式打开它。 |
QuotaReductionNotSupported | 当前配额限制高于请求的配额或当前使用情况高于请求的配额。 不支持减少配额。 不能减少配额。 |
RequestThrottled | 每个订阅级和租户级 API 请求可能会受到限制,以帮助提高服务的整体性能。 请求数超出了允许的最大 API 请求速率。 请稍后重试。 |
ResourceNotAvailableForOffer | 资源当前在产品/服务类型的位置不可用。 有关当前和已停用产品/服务的列表,请参阅 Microsoft Azure 产品/服务详细信息 页。 若要更改产品/服务类型,请参阅 将 Azure 订阅更改为其他套餐 页。 还可以在Azure 门户中提出新的支持请求。 在 “选择问题类型”下,选择 “服务和订阅限制” (配额) 。 还可以使用 Azure 支持 REST API 以编程方式打开它。 |
ResourceNotAvailableForSubscription | 资源当前在所请求订阅的位置不可用。 在Azure 门户中提出新的支持请求。 在 “选择问题类型”下,选择 “服务和订阅限制 (配额) 。 还可以使用 Azure 支持 REST API 以编程方式打开它。 |
UnableToIncreaseQuota | 无法增加所请求订阅的配额。 在Azure 门户中提出新的支持请求。 在 “选择问题类型”下,选择 “服务和订阅限制 (配额) 。 |
需要 MFA | 配额请求需要多重身份验证。 请按照 启用 MFA 中的说明为租户/帐户启用多重身份验证,然后重试 |
RequestPartiallyFulfilled | 配额请求已部分满足。 如有任何问题,请在Azure 门户中提出新的支持请求。 在 “选择问题类型”下,选择“ 服务和订阅限制 (配额) |
其他语言和接口的支持
配额 REST API 在以下特定于语言的 Microsoft Azure SDK 中提供:
- 用于 .NET 的 Microsoft Azure SDK:NuGet 包
- Microsoft Azure SDK for Java: Java 包
- Microsoft Azure SDK for Python: Py 包
- Microsoft Azure SDK for JavaScript (NodeJS & Browser) : JavaScript 包
- Microsoft Azure SDK for Go: Go 包
- Microsoft Azure CLI 扩展: Cli 包
使用 Azure 门户 和支持 API 管理配额
通过 Azure,可创建和管理支持请求(也称为支持票证)。 方法: