Google Cloud 对项目所有者的资源用量设有配额,从而对项目可以使用的特定 Google Cloud 资源设置了硬性限制。配额分为两类:
- 速率配额,例如每天的 API 请求数。此配额会在特定于服务的时间间隔(例如一分钟或一天)后重置。
- 分配配额,例如给定时间内项目使用的虚拟机或负载平衡器数量。此配额不会在一段时间后重置,而是必须在您不再需要使用相关资源时明确释放(例如删除某个 GKE 集群)。
每个配额限制代表一个特定的可数资源,例如每天的 API 请求数,以及应用当前使用的负载平衡器数量。
实施配额的目的有多种:
- 保护 Google Cloud 用户群体,防止使用量意外激增。
- 帮助您管理资源。例如,开发和测试应用时,您可以设置自己的服务用量限制。
不同的项目对于同一服务可能有不同的配额。例如,如果您使用免费试用帐号探索平台,则配额较为有限。为项目启用结算会增加大多数服务的配额;您还可以明确为特定服务申请更多配额。随着您的 Google Cloud 使用量逐步增加,您的配额可能会相应地增加。
项目中的配额限制可能会受到服务所有者、项目所有者或配额管理员应用的配额替换值的影响;如需详细了解如何计算配额限制,请参阅服务配额模型。
您可以配置监控和提醒,跟踪配额用量并在配额到期或用量异常时提醒您。
本页面介绍如何在项目中使用配额,包括如何查找和修改现有配额上限、如何申请更高的配额以及如何监控配额用量。您可以参阅监控 API 用量,了解如何查看其他 API 用量指标。
权限
您需要具备以下 IAM 权限,才能在 Google Cloud Console 中查看项目配额或以编程方式访问配额:
resourcemanager.projects.get
resourcemanager.folders.get
(如果您想查看整个文件夹的配额)resourcemanager.organizations.get
(如果您想查看整个组织的配额)serviceusage.quotas.get
您可以参阅 IAM 权限参考文档,了解默认情况下哪些角色具备这些权限。
如需在项目、文件夹或组织级层更改配额,您还需要以下权限:
serviceusage.quotas.update
默认情况下,以下角色包含此权限:Owner、Editor、Quota Administrator 和 Service Usage Admin。
查看您的配额
您可以在 Google Cloud Console 的两个不同区域查看当前配额限制:
- 配额页面,其中列出了项目的所有配额用量和限制。
- Cloud Console API 信息中心,其中列出了特定 API 的配额信息,包括随时间变化的资源用量。
您可以使用 Service Usage API 以编程方式管理配额用量。
此外,某些服务还允许您通过命令行访问配额和资源用量信息。例如,Compute Engine 允许您使用 gcloud compute
命令访问配额信息。
如需了解如何监控配额用量以及如何设置配额提醒,请参阅监控配额指标部分。
查看项目的所有配额
如需查看项目中所有资源的配额用量和限制,请执行以下操作:
转到“IAM 和管理”中的 Cloud Console 配额页面,其中会按行列出每项服务中提供的每种配额类型的资源项。
对结果进行排序和过滤,以便重点查看所需信息:
- 如需查看特定属性,请点击 过滤表。
- 如需按字母顺序对列表进行排序,请将鼠标指针悬停在服务、限制名称、配额状态或详情上。
- 默认情况下,列表会将您用量最高的配额(根据过去七天的峰值用量)显示在最前面,便于您发现哪些资源用量有超出限制的风险。若要将用量最少的配额排在最前,请切换配额状态箭头。
- 如需详细了解特定配额的当前用量,请点击详细信息列中的所有配额。
配额页面上列出的配额用量指标的计算方式如下:
- 速率配额:
- 对于每日速率配额,列出的数字表示当前 24 小时时间段到目前为止的总用量。
- 对于每分钟或每 100 秒配额,列出的数字表示过去 24 小时内的平均使用量。
- 分配配额:列出的数字表示项目当前正在使用的资源数量(例如负载平衡器数量)。
您可以在配额各自的文档中找到特定服务配额及其含义的更多信息:例如资源配额介绍了 Compute Engine 配额。
API 特定的配额
如需查看特定 API 的详细配额信息,包括随时间的用量,请在 Cloud Console 中转到该 API 的配额页面。根据 API 的不同,这些限制可能包括“每天请求数”、“每分钟请求数”和“每个用户每分钟请求数”。在为项目启用结算功能之前,某些 API 设置的限制非常低。
您可以在 Cloud Console 的两个不同区域中查看特定 API 的当前限制:
Cloud Console 配额页面,如查看所有项目配额部分所述。
Cloud Console API 和服务信息中心页面。在此页面上,选择您的项目,点击 API 名称,然后点击配额。配额页面会显示 API 的配额名称。您可以展开各个配额,了解随时间变化的详细用量以及当前的限制。默认情况下,显示的限制是由 Google 施加的。您可以按照限制用量部分中的说明为使用量设置上限。如果 Google 没有对给定配额施加限制,则限制会显示为无限制。
- 某些配额不会显示在 API 特定的配额页面中。例如,对 Compute Engine API 的请求有 API 特定的配额页面,但该页面中不包含 Compute Engine 计算资源用量(分配配额)。此外,如果您在多个位置使用某个服务,则 API 特定的配额页面不会显示区域或可用区配额限制及其用量。如需查看可以按位置过滤的项目配额用量的完整列表,请参阅项目配额页面。
使用 Cloud Console 管理配额
根据您的资源用量,您可能需要上下调整项目的配额限制。本部分介绍如何更改提供的配额限制。 您可以点击详细信息列中的所有配额,以查看您的配额限制。
申请更高配额
您可以在 Cloud Console 配额页面中,为大多数具有配额限制的计费服务申请更改配额。
- 在配额状态列中,点击 警告。配额面板会列出所有配额。
- 勾选要更改的配额的位置对应的复选框。
- 点击 修改配额。
- 填写申请表。
- 输入修改后的配额限制,并视情况输入说明。
- 点击完成。
- 点击提交请求。
您也可以点击
过滤表,按特定属性查询配额。我们将通过电子邮件回复您的申请。
Google Cloud 配额申请很快就会得到处理,通常不超过两个工作日,Google Cloud 会以电子邮件进行确认。如果需要进一步的帮助,您可以回复该电子邮件。请注意,大幅更改配额需要更长时间才能获得批准。
限制用量
您可能希望通过设置自己的配额限制来限制特定资源的用量。例如,为了防止超出免费用量限额而产生费用,您可以申请每日上限。为配额设置上限最简单的方法是在 API 特定的配额页面上修改限制。
在 Google Cloud Console 中,转到 IAM 和管理页面上的配额。
- 点击 过滤表,按特定属性查询配额。
- 点击全部配额,找到您要设置上限的用量。
- 点击对应的复选框以选中要修改的属性。
- 点击 修改配额。
- 填写申请表。
- 输入修改后的配额限制,并视情况输入说明。
- 点击完成。
- 点击提交请求。
如果您要为未显示在此页面上的配额设置上限,或者要设置为高于提供的上限,请按照申请更高配额中所述修改限制。
使用 Service Usage API 管理配额
您可以使用 Service Usage API 来获取当前配额并限制某些 Google Cloud API 和服务的配额用量。如需详细了解 Service Usage,请参阅以下内容:
- 如需查看概览,请参阅什么是 Service Usage?
- 如需查看 API 参考文档,请参阅 API 与参考文档。
- 如需查看用量指南,请参阅方法指南。
您无法使用 Service Usage API 来申请更高的配额,而必须使用 Cloud Console 进行申请。
与配额指标有关的监控和提醒功能
Cloud Monitoring API 和界面可让您更深入地监控配额用量、限制和错误。您可以使用这些指标创建自定义信息中心和提醒,以便监控一段时间内的配额用量,并在接近配额上限等情况下收到提醒。
Cloud Monitoring 支持多种不同的指标,您可以将这些指标与过滤器和聚合功能结合使用,从全新的角度深入了解配额使用情况。例如,您可以将分配配额用量指标与 Cloud TPU 名称上的 quota_metric
过滤器结合使用。
{ % include "monitoring/_shared/metrics-explorer/_template_metrics_explorer.html" %}
同样,如需查看配额上限或超出配额错误,请先选择 Consumer Quota 作为资源类型,然后选择 Quota limit 或 Quota exceeded error。
找到需要的配额用量信息后,您可以使用 Cloud Monitoring 创建自定义信息中心和提醒,以帮助您监控和维护稳健的应用。如需了解详情,请参阅以下页面:
请参阅 Cloud Monitoring 文档中的使用配额指标了解详情并查看常见配额提醒政策的示例。
您可在 Cloud Monitoring 参考指南中找到配额指标的详细参考文档。
配额错误
如果您的项目在使用服务时超过了配额,Google Cloud 会根据您访问该服务的方式返回错误:
- 如果在发出 HTTP/REST 请求时超出了配额,Google Cloud 会返回 HTTP
429 TOO MANY REQUESTS
状态代码。 - 如果在发出 API 请求时超出了配额,Google Cloud 会返回 HTTP
413 REQUEST ENTITY TOO LARGE
状态代码。 - 如果在使用 gRPC 时超出配额,Google Cloud 会返回
ResourceExhausted
错误。此错误的显示方式取决于该服务。 - 如果在使用
gcloud
命令行工具命令时超出配额,gcloud
命令行工具会输出超出配额错误消息并返回退出代码1
。
速率配额会在特定于每个服务的预定义时间间隔后重置。如需了解详情,请参阅特定服务的配额文档。
您可以使用 Cloud Monitoring 来确定与错误提醒相关的配额用量,并针对特定配额错误创建自定义提醒,如监控配额指标中所述。