对于高端的性能关键型应用,请使用极端永久性磁盘。极端永久性磁盘具有更高的最大 IOPS 和吞吐量,并且允许您单独预配 IOPS 和容量。极端永久性磁盘适用于所有可用区。
创建极端永久性磁盘时,您可以在 2,500 到 120,000 IOPS 的范围之间选择所需的 IOPS。本文档介绍使用极端永久性磁盘的一些重要限制、达到最大可能的性能水平的注意事项,以及如何使用 Google Cloud 控制台、gcloud CLI 或 REST 预配 IOPS。
准备工作
-
设置身份验证(如果尚未设置)。身份验证是通过其进行身份验证以访问 Google Cloud 服务和 API 的过程。如需从本地开发环境运行代码或示例,您可以按如下方式向 Compute Engine 进行身份验证。
Select the tab for how you plan to use the samples on this page:
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
REST
如需在本地开发环境中使用本页面上的 REST API 示例,请使用您提供给 gcloud CLI 的凭据。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
如需了解详情,请参阅 Google Cloud 身份验证文档中的使用 REST 时进行身份验证。
-
机器类型支持
为了达到极端永久性磁盘提供的最大性能水平,您必须将极端永久性磁盘挂接到大型机器类型的虚拟机 (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 | 4000 | 3000 | |
M2 | 208 | 40000 | 2,200 | 1200 |
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 以满足您的工作负载要求,请执行以下操作:
- 记下您的工作负载的 IOPS 要求。
- 确定满足工作负载吞吐量要求所需的 IOPS。
- 所需的 IOPS = 每秒吞吐量 (KB)/256
- 将预配 IOPS 设置为两个数字中的较大者。
- 创建新的永久性磁盘。
- 在磁盘类型下,选择极端永久性磁盘。
- 在预配的 IOPS 下方,选择 IOPS 上限(范围介于 2,500 到 120,000 IOPS 之间)。预配的 IOPS 会产生相关费用。
使用 gcloud compute disks create
命令创建新磁盘并添加以下标志:
gcloud compute disks createDISK_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 之间。预配的 IOPS 会产生相关费用。
使用 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
:您的项目 IDZONE
:磁盘的目标可用区DISK_NAME
:磁盘的名称IOPS_LIMIT
:IOPS 上限,范围介于 2,500 到 120,000 IOPS 之间。预配的 IOPS 会产生相关费用。
后续步骤
- 查看磁盘价格信息。
- 查看磁盘性能指标。
- 了解如何向虚拟机添加 Extreme Persistent Disk 卷。
- 了解如何克隆 Extreme Persistent Disk 卷。