配额和限制

本文档列出了应用于 Cloud DNS 的配额和限制。quotasquotas

配额用于限制您的 Google Cloud 项目可使用的共享 Google Cloud 资源(包括硬件、软件和网络组件)的数量。因此,有以下功能的系统具有配额:

  • 监控 Google Cloud 产品和服务的使用情况或消耗情况。
  • 出于确保公平性和减少用量激增等原因,限制这些资源的消耗。
  • 维护可自动强制执行规定限制的配置。
  • 提供请求或更改配额的方法。

在大多数情况下,当超过配额时,系统会立即阻止对相关 Google 资源的访问,并且您尝试执行的任务将失败。在大多数情况下,配额适用于每个 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 类型的资源记录集)最多可以有 8 个域名服务器。
每个项目的响应政策数 每个项目允许的响应政策数量上限。
区域一分钟的响应政策规则写入限制 每分钟可为一个区域写入的响应政策规则数量上限。
每个批量操作的响应政策规则数 每分钟每个批次的响应政策管理操作数量上限。
响应政策规则数(每项政策) 您可为政策创建的响应政策规则数量上限。
每项转发政策的目标域名服务器 每项转发政策允许的目标域名服务器数量上限。
每个代管式区域的目标域名服务器 每个代管式转发区域允许的目标域名服务器数量上限。
每次更改的资源记录集数据的总大小(以字节为单位) 一个 ChangesCreateRequest 中允许的总 rrdata 大小上限(以字节为单位)。
每个代管式区域的 VPC 网络 允许将私有范围区域连接到的 VPC 网络数上限。
每项政策的 VPC 网络数 每项 Cloud DNS 服务器政策允许的 VPC 网络数量上限。
一个区域的一分钟的写入限制 每个区域每分钟的 DNS 写入次数上限。此配额用于任何创建、修改或删除 DNS 记录的写入操作。

限制

限制与配额不同,您可以申请增加配额,但一般来说无法提高限制(除非有明确说明)。

API 的使用

每天的 API 请求(查询)次数在项目级别进行统计。所有 API 请求都会计入此限制,包括通过 Google Cloud CLI 和 Google Cloud 控制台发出的请求。

资源限制

错误 限额
如需请求更新这些限制,请与 Cloud Customer Care 联系。
每个网络的对等互连可用区的数量 1,000
每个委派项的域名服务器数量 8
每次更改的添加操作数量 1,000
每次更改的删除操作数量 1,000
每次更改的资源记录数据大小 10 万字节
标签组合数 1,000
每项响应政策的规则数 10,000
每项路由政策的项数 100
绑定到一个 VPC 网络的代管式区域的数量 10,000
DNS 响应的大小上限 (UDP) 1440 个字节
DNS 响应的大小上限 (TCP) 65533 个字节
每个 VPC 网络的最大查询速率 10 秒 (10s) 时间段内 10 万次查询
这些限制无法提高。
每个 VPC 网络的响应政策数 1
每个代管区域的标签数 64 个标签,且每个键/值 128 字节
转发区域中的转发目标数 50
备用名称服务器中的转发目标数 50

域名服务器限制

Cloud DNS 会将每个公开代管区域分配给 5 个域名服务器分片中的一个。分片由权威域名服务器名称中数字之前的字母表示,因此从 ns-cloud-e1ns-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.tldotherdomain.example.tld)可以分配给同一碎片。但是,Cloud DNS 可能会在考虑限制后选择任何可用的碎片。如果在每个碎片中创建此类子网域,则无法为父网域 example.tld 创建可用区。

为避免出现此问题,请始终先为父网域创建代管式可用区,然后再为其子网域创建可用区。

如果子网域已阻止所有碎片,请按照以下步骤为父网域释放碎片:

  1. 查看每个子网域区域的域名服务器以确定其分片。
  2. 查找代管式可用区最少(或最不重要)的碎片 (X)。X
  3. 将 X 碎片中的可用区导出到其他 DNS 服务,并对可用区委托进行相应更改。X
  4. 原始委托的 TTL 到期后,请删除碎片 X 子网域的代管式可用区。
  5. 为父网域创建代管式可用区;它将分配到碎片 X。X
  6. 恢复删除的子网域代管区域,恢复顺序是先恢复子网域,然后再恢复子网域自己的任何子网域。它们都将存储在新分片中,因此都需要更新委托。

查看限制

您可以运行以下命令来查询项目的限制。下面的示例显示了 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) 主账号需要具备以下某个角色:

任务 所需角色
检查项目的配额 以下之一:
修改配额,申请更多配额 以下之一:
  • Project Owner (roles/owner)
  • Project Editor (roles/editor)
  • Quota Administrator (roles/servicemanagement.quotaAdmin)
  • 具有 serviceusage.quotas.update 权限的自定义角色

查看您的配额

控制台

  1. 在 Google Cloud 控制台中,转到配额页面。

    转到“配额”

  2. 如需搜索要更新的配额,请使用过滤表。 如果您不知道配额的名称,请使用此页面上的链接。

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 控制台。如需了解详情,请参阅申请更高的配额

控制台

  1. 在 Google Cloud 控制台中,转到配额页面。

    转到“配额”

  2. 配额页面上,选择您要更改的配额。
  3. 点击位于页面顶部的修改配额
  4. 名称部分,输入您的名称。
  5. 可选:在手机号码部分,输入有效的手机号码。
  6. 提交您的申请。 配额申请需要 24 到 48 小时才能完成处理。

资源可用性

每个配额代表您可以创建的特定类型资源的数量上限(如果该资源可用)。请务必注意,配额保证资源可用性。即使您具有可用配额,如果新资源不可用,您也无法创建新资源。

例如,您的配额可能足以在 us-central1 区域中创建新的区域性外部 IP 地址。但是,如果该区域中没有可用的外部 IP 地址,则无法执行此操作。区域级资源可用性也会影响您能否创建新资源。

导致资源在整个区域不可用的情况非常罕见。但是,地区内的资源有时可能会耗尽,通常不会影响资源类型的服务等级协议 (SLA)。如需了解详情,请参阅资源的相关 SLA。