极端永久性磁盘


对于高端的性能关键型应用,请使用极端永久性磁盘。极端永久性磁盘具有更高的最大 IOPS 和吞吐量,并且允许您单独预配 IOPS 和容量。极端永久性磁盘适用于所有可用区。

创建极端永久性磁盘时,您可以在 2,500 到 120,000 IOPS 的范围之间选择所需的 IOPS。本文档介绍使用极端永久性磁盘的一些重要限制、达到最大可能的性能水平的注意事项,以及如何使用 Google Cloud 控制台、gcloud CLI 或 REST 预配 IOPS。

准备工作

  • 设置身份验证(如果尚未设置)。身份验证是通过其进行身份验证以访问 Google Cloud 服务和 API 的过程。如需从本地开发环境运行代码或示例,您可以按如下方式向 Compute Engine 进行身份验证。

    选择标签页以了解您打算如何使用本页面上的示例:

    控制台

    当您使用 Google Cloud 控制台访问 Google Cloud 服务和 API 时,无需设置身份验证。

    gcloud

    1. 安装 Google Cloud CLI,然后通过运行以下命令初始化 Google Cloud CLI:

      gcloud init
    2. 设置默认区域和可用区

    REST

    如需在本地开发环境中使用本页面上的 REST API 示例,请使用您提供给 gcloud CLI 的凭据。

      安装 Google Cloud CLI,然后通过运行以下命令初始化 Google Cloud CLI:

      gcloud init

机器类型支持

为了达到极端永久性磁盘提供的最大性能水平,您必须将极端永久性磁盘挂接到大型机器类型的虚拟机 (VM) 实例,包括 M2、M3 或 N2-64 和更大的机器类型。

所有其他机器类型都无法用于生产环境。您可以将极端永久性磁盘成功挂接到使用不支持的机器类型的虚拟机,但磁盘的性能会下降至以下两个值中的较低者:您预配的 IOPS 数或 SSD 永久性磁盘 IOPS 水平。

配备 64 或 80 个 vCPU 的 N2 虚拟机需要 Intel Ice Lake CPU 平台才会达到规定的性能限制。使用 Intel Cascade Lake CPU 平台的 N2 虚拟机的性能会略低。如需了解详情,请参阅为虚拟机实例设置满足最低要求的 CPU 平台

下表列出了受支持的机器类型的极端永久性磁盘性能限制。

机器类型 vCPU 数量 最大 IOPS 最大读取吞吐量 (MB/s) 最大写入吞吐量 (MB/s)
N2 64 或 80 (Intel Cascade Lake) 120,000 2,200 2,200
64 或更多 (Intel Ice Lake) 120,000 4,000 3,000
M2 208 60,000 2,200 2,200
416 40,000 2,200 1,200
M3 64 或更少 40,000 2,200 1,200
128 80,000 2,200 1,700

性能限制和工作负载模式

要达到极端永久性磁盘提供的性能上限,您必须考虑以下工作负载参数:

  • I/O 大小:最大 IOPS 限制假定您使用的 I/O 大小为 4 或 8 KB。最大吞吐量限制假定您使用的 I/O 大小为 1 MB。
  • 队列长度:队列长度是永久性磁盘的待处理请求数。要达到性能上限,您必须根据工作负载的 I/O 大小、IOPS 和延迟时间敏感程度来调整队列长度。最佳队列长度因每个工作负载而异,但通常应大于 128。
  • 工作集大小:工作集大小是在短时间内访问的磁盘数据量。为获得最佳性能,请将工作集大小限制为小于 1.5 TB。
  • 同时使用其他永久性磁盘:极端永久性磁盘与同一虚拟机上挂接的所有其他永久性磁盘共享每个虚拟机的 IOPS 和吞吐量上限。监控极端永久性磁盘的性能时,请将您要发送到同一虚拟机的其他磁盘的所有 I/O 请求考虑在内。

其他限制

  • 极端永久性磁盘是可用区资源。您无法创建区域极端永久性磁盘。
  • 您无法将只读模式的多个虚拟机实例挂接到一个极端永久性磁盘。
  • 您无法通过极端永久性磁盘创建映像或机器映像
  • 您无法克隆极端永久性磁盘。
  • 您在 6 小时内只能调整一次极端永久性磁盘的大小。

吞吐量

对于极端永久性磁盘,吞吐量会根据您预配的 IOPS 数量进行扩缩,速率为每个 I/O 256 KB 的吞吐量。但是,吞吐量最终受限于每个实例的限制,具体取决于挂接极端磁盘的虚拟机实例上的 vCPU 数。

极端永久性磁盘的吞吐量不是全双工。本文档中列出的最大吞吐量限制适用于读取和写入吞吐量的总和。

预配 IOPS

如需预配 IOPS 以满足您的工作负载要求,请执行以下操作:

  1. 记下您的工作负载的 IOPS 要求。
  2. 确定满足工作负载吞吐量要求所需的 IOPS。
    • 所需的 IOPS = 每秒吞吐量 (KB)/256
  3. 将预配 IOPS 设置为两个数字中的较大者。

控制台

  1. 创建新的永久性磁盘
  2. 磁盘类型下,选择极端永久性磁盘
  3. 预配 IOPS 下方,选择所需的 IOPS 限制(范围为 2,500 到 120,000 IOPS)。

gcloud

使用 gcloud compute disks create 命令创建新磁盘并添加以下标志:

gcloud compute disks create DISK_NAME \
  --size=DISK_SIZE \
  --type=pd-extreme \
  --provisioned-iops=IOPS_LIMIT

请替换以下内容:

  • DISK_NAME:新磁盘的名称
  • DISK_SIZE:新磁盘的大小(以 GB 为单位)。 极端永久性磁盘的默认磁盘大小为 1,000 GB。
  • IOPS_LIMIT:所需的 IOPS 限制,范围为 2,500 到 120,000 IOPS

REST

使用 disks.insert 方法创建新磁盘并添加以下标志:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks

{
 "name": "DISK_NAME",
 "type": "zones/ZONE/diskTypes/pd-extreme"
 "provisionedIops": "IOPS_LIMIT"
}

请替换以下内容:

  • PROJECT_ID:您的项目 ID
  • ZONE:磁盘的目标可用区
  • DISK_NAME:磁盘的名称
  • IOPS_LIMIT:所需的 IOPS 限制,范围为 2,500 到 120,000 IOPS