本文档列出了适用于 Cloud DNS 的配额和系统限制。
- 配额用于指定您可以使用的可计数共享资源的数量。配额由 Cloud DNS 等 Google Cloud 服务定义。
- 系统限制是无法更改的固定值。
Google Cloud 使用配额来帮助确保公平性并减少资源使用和可用性的激增。配额用于限制您的 Google Cloud 项目可使用的 Google Cloud 资源的数量。配额适用于一系列资源类型,包括硬件、软件和网络组件。例如,配额可以限制对某项服务的 API 调用次数、您的项目并发使用的负载均衡器数量或者您可以创建的项目数量。配额可以防止服务过载,从而保护 Google Cloud 用户社区。配额还可帮助您管理自己的 Google Cloud 资源。
Cloud 配额系统执行以下操作:
- 监控 Google Cloud 产品和服务的消耗情况
- 限制这些资源的消耗量
- 提供请求更改配额值的方法
在大多数情况下,当您尝试消耗的资源超出其配额允许的范围时,系统会阻止对资源的访问,并且您尝试执行的任务会失败。
配额通常在 Google Cloud 项目级层应用。您在一个项目中使用资源不会影响您在另一个项目中的可用配额。在 Google Cloud 项目中,配额在所有应用和 IP 地址间共享。
Cloud DNS 资源也有系统限制。系统限制不能更改。
配额
如需更改配额,请参阅申请额外的配额。
下表重点介绍了每个项目的 Cloud DNS 资源的重要全球配额。如需了解其他配额,请参阅 Google Cloud 控制台中的配额页面。
项 | 说明 |
---|---|
某个区域每分钟的读取次数上限 | 每位 IAM 用户在一分钟内可向 Cloud DNS API 发出的 API 请求的数量上限。此配额仅适用于 API 调用。DNS 查询处理没有配额。 |
每个托管式区域的 DNSSEC 密钥数量 | 每个托管区域的 DNSSEC 密钥数量上限。 |
每个项目的代管区域数 | 项目中允许的托管区域数量上限。 |
每个 VPC 网络的托管可用区数 | 可附加到 VPC 网络的托管区域的数量上限。 |
每个项目的政策资源数量 | 每个项目的 DNS 服务器政策数量上限。 |
“每个响应包含的网络数”政策 | 每个响应政策允许的 VPC 网络数量上限。 |
每项路由政策的项数 | 每项路由政策允许的项数上限。 |
每个托管区域的 GKE 集群数量 | 可将私有范围的区域附加到的 Google Kubernetes Engine (GKE) 集群的数量上限。 |
每个政策的 GKE 集群数量 | 每个政策允许的 GKE 集群数量上限。 |
每个 GKE 集群的托管区域数 | 可附加到 GKE 集群的代管区域的数量上限。 |
每次更改的资源记录添加次数 | 每个 ChangesCreateRequest 最多可添加的 ResourceRecordSets 数量上限。 |
每次更改的资源记录删除次数 | 每个 ChangesCreateRequest 允许删除的 ResourceRecordSets 数量上限。 |
每个托管式区域的资源记录集数 | 项目中每个可用区允许的 ResourceRecordSets 数量上限。 |
每个资源记录集的资源记录数 | 每个 ResourceRecordSet 允许的 ResourceRecords 数量上限。每个委托(NS 类型的资源记录集)最多可包含八个域名服务器。 |
每个项目的响应政策数量 | 每个项目允许的响应政策数量上限。 |
某个区域的响应政策规则写入限制(每分钟) | 每个区域每分钟可写入的响应政策规则的数量上限。 |
每项批量操作的响应政策规则 | 每分钟每批回复政策管理操作的数量上限。 |
每项政策的响应政策规则数 | 您可以为政策创建的响应政策规则的数量上限。 |
每个转发政策的目标域名服务器 | 每个转发政策允许的目标域名服务器数量上限。 |
每个托管区域的目标域名服务器 | 每个托管的转发可用区允许的目标域名服务器数量上限。 |
每次更改的资源记录集数据的总大小(以字节为单位) | 一个 ChangesCreateRequest 中允许的总 rrdata 大小上限(以字节为单位)。 |
每个托管区域的 VPC 网络数 | 可将专用范围的区域附加到的 VPC 网络的数量上限。 |
每个政策的 VPC 网络数 | 每项 Cloud DNS 服务器政策允许的 VPC 网络数量上限。 |
某个区域每分钟的写入限制 | 每个区域每分钟的 DNS 写入次数上限。此配额适用于创建、修改或删除 DNS 记录的任何写入操作。 |
限制
限制与配额不同,您可以申请增加配额,但一般来说无法提高限制(除非有明确说明)。
API 的使用
每天的 API 请求(查询)次数在项目级别进行统计。所有 API 请求都会计入此限制,包括通过 Google Cloud CLI 和 Google Cloud 控制台发出的请求。
资源限制
设限项 | 限制 |
---|---|
如需请求更新这些限制,请与 Cloud Customer Care 团队联系。 | |
每个网络的对等互连可用区的数量 | 1000 |
每个委派项的域名服务器数量 | 8 |
每次更改的添加操作数量 | 1000 |
每次更改的删除操作数量 | 1000 |
每次更改的资源记录数据大小 | 10 万字节 |
标签组合数 | 1000 |
每项响应政策的规则数 | 10000 |
每项路由政策的项数 | 100 |
绑定到一个 VPC 网络的托管区域数 | 10000 |
DNS 响应的大小上限 (UDP) | 1440 个字节 |
DNS 响应的大小上限 (TCP) | 65533 个字节 |
这些限制无法提高。 | |
每个 VPC 网络在每个区域中的最大查询速率 | Google Cloud 区域(例如 us-central1-a )中 10 秒 (10s) 时间段内 10 万次查询 |
每个 VPC 网络的响应政策数 | 1 |
每个代管区域的标签数 | 64 个标签,且每个键/值 128 字节 |
转发区域中的转发目标数 | 50 |
备用名称服务器中的转发目标数 | 50 |
域名服务器限制
Cloud DNS 会将每个公开代管区域分配给 5 个域名服务器分片中的一个。分片由权威域名服务器名称中数字之前的字母表示,因此从 ns-cloud-e1
到 ns-cloud-e4
都位于 E 分片。
如果某个碎片上已经存在以下任一项,则无法将网域(例如 domain.example.tld
)的新代管式可用区分配给该碎片:
- 具有相同 DNS 名称的代管式可用区,例如
domain.example.tld
- DNS 名称的子网域,例如
sub.domain.example.tld
- DNS 名称的父网域,例如
example.tld
由于存在这些限制,因此以下限制适用于公开的代管式可用区:
- 您最多可以创建五个具有完全相同 DNS 名称的可用区。
- 对于任何父网域,您最多可以创建 5 级子网域。
此限制适用于 Google Cloud 中的所有项目和用户。非委派子网域以及托管在其他 DNS 服务上的委派子网域不计入此限制。Cloud DNS 在使用同一 DNS 名称创建第 5 个区域并阻止其他人使用该 DNS 名称之前,会要求您先通过 TXT
记录验证网域所有权。
同一父网域的多个子网域(例如 domain.example.tld
和 otherdomain.example.tld
)可以分配给同一碎片。但是,Cloud DNS 可能会在考虑限制后选择任何可用的碎片。如果在每个碎片中创建此类子网域,则无法为父网域 example.tld
创建可用区。
为避免出现此问题,请始终先为父网域创建代管式可用区,然后再为其子网域创建可用区。
如果子网域已阻止所有碎片,请按照以下步骤为父网域释放碎片:
- 查看每个子网域区域的域名服务器以确定其分片。
- 查找代管式可用区最少(或最不重要)的碎片 (X)。
- 将 X 碎片中的可用区导出到其他 DNS 服务,并对可用区委托进行相应更改。
- 原始委托的 TTL 到期后,请删除碎片 X 子网域的代管式可用区。
- 为父网域创建代管式可用区;它将分配到碎片 X。
- 恢复删除的子网域代管区域,恢复顺序是先恢复子网域,然后再恢复子网域自己的任何子网域。它们都将存储在新分片中,因此都需要更新委托。
查看限制
您可以运行以下命令来查询项目的限制。下面的示例显示了 my-project
项目中各种类型对象的总限制。totalRrdataSizePerChange
配额以字节为单位,是一次更改的添加操作和删除操作涉及字节数量之和。
gcloud dns project-info describe my-project
虽然这些属于限制,但 Google Cloud 会在内部将其作为配额进行跟踪,因此它们在输出中被标记为配额。
id: my-project, kind: "dns#project", number: "123456789012", quota: kind: dns#quota, managedZones: 10000, resourceRecordsPerRrset: 10000, rrsetAdditionsPerChange: 3000, rrsetDeletionsPerChange: 3000, rrsetsPerManagedZone: 10000, totalRrdataSizePerChange: 100000, labelSets: 1000
您可以在 Google Cloud 控制台的首页顶部找到默认项目和其他项目的名称。
管理配额
出于各种原因,Cloud DNS 会对资源用量实施配额限制。例如,配额可避免出现意料之外的用量突增,从而为 Google Cloud 用户社区提供保护。配额还可帮助正在通过免费层级探索 Google Cloud 的用户避免中断试用。
所有项目在开始时都具有相同的配额,您可以通过申请更多配额来进行更改。根据您使用产品的情况,一些配额可能会自动增加。
权限
如需查看配额或申请增加配额,Identity and Access Management (IAM) 主账号需要具备以下某个角色:
任务 | 所需角色 |
---|---|
检查项目的配额 | 以下之一:
|
修改配额,申请更多配额 | 以下之一:
|
查看您的配额
控制台
- 在 Google Cloud 控制台中,转到配额页面。
- 如需搜索要更新的配额,请使用过滤表。 如果您不知道配额的名称,请使用此页面上的链接。
gcloud
使用 Google Cloud CLI 运行以下命令来查看您的配额。
请将PROJECT_ID
替换为您自己的项目 ID。
gcloud dns project-info describe PROJECT_ID
超出配额时引发的错误
如果在发出 gcloud
命令时超过了配额,gcloud
会显示一条 quota exceeded
错误消息,并返回退出代码 1
。
如果在发出 API 请求时超出了配额,Google Cloud 会返回以下 HTTP 状态代码:413 Request Entity Too Large
。
申请更多配额
如需调整大多数配额,请使用 Google Cloud 控制台。如需了解详情,请参阅申请配额调整。
控制台
- 在 Google Cloud 控制台中,转到配额页面。
- 在配额页面上,选择您要更改的配额。
- 点击位于页面顶部的 修改配额。
- 在名称部分,输入名称。
- 可选:在手机中,输入有效的手机号码。
- 提交您的申请。 配额申请需要 24 到 48 小时才能完成处理。
资源可用性
每个配额代表您可以创建的特定类型资源的数量上限(如果该资源可用)。请务必注意,配额无法保证资源可用。即使您具有可用配额,如果新资源不可用,您也无法创建新资源。
例如,您的配额可能足以在 us-central1
区域中创建新的区域性外部 IP 地址。但是,如果该区域中没有可用的外部 IP 地址,则无法执行此操作。可用区级资源可用性也会影响您能否创建新资源。
导致资源在整个区域不可用的情况非常罕见。但是,地区内的资源有时可能会耗尽,通常不会影响资源类型的服务等级协议 (SLA)。如需了解详情,请参阅资源的相关 SLA。