配额和限制

本文档列出了适用于 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-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)。
  3. 将 X 碎片中的可用区导出到其他 DNS 服务,并对可用区委托进行相应更改。
  4. 原始委托的 TTL 到期后,请删除碎片 X 子网域的代管式可用区。
  5. 为父网域创建代管式可用区;它将分配到碎片 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。