关于本地 SSD 磁盘


如果您的工作负载需要高性能、低延迟的临时存储,请考虑在创建计算实例时使用本地固态硬盘(本地 SSD)磁盘。本地 SSD 磁盘是 Compute Engine 的始终加密临时固态存储。如需了解 Compute Engine 中提供的其他磁盘,请参阅选择磁盘类型

如果您需要为以下任何应用场景选择存储,那么本地 SSD 磁盘是理想的选择:

  • 用于存储临时性数据的缓存或存储
  • 用于高性能计算或数据分析的暂存处理空间
  • 临时数据存储,例如用于 Microsoft SQL Server 的 tempdb 系统数据库

Google Cloud HyperdiskPersistent Disk 提供的永久性存储相比,本地 SSD 磁盘提供卓越的每秒 I/O 操作次数 (IOPS) 性能和极低的延迟。之所以具有如此低的延迟时间,是因为本地 SSD 磁盘以物理方式挂接到托管实例的服务器。出于同样的原因,本地 SSD 磁盘只能提供临时存储

由于本地 SSD 仅适用于临时存储,因此您必须在 Hyperdisk 或 Persistent Disk 卷上存储非临时性质的数据。

如需将本地 SSD 磁盘与计算实例搭配使用,请在创建实例时添加本地 SSD 磁盘。实例创建后无法添加本地 SSD 磁盘。

本地 SSD 磁盘的类型

本地 SSD 磁盘有两种类型:

  • Titanium SSD:Titanium SSD 是一种定制设计的本地 SSD 磁盘,使用 Titanium I/O 分流处理,并提供增强的 SSD 安全性、性能和管理功能。与上一代本地 SSD 相比,Titanium 提供更高的存储 IOPS、吞吐量和更短的延迟时间。专为存储优化而设计的 Z3 机器系列和通用 C4A 机器系列使用 Titanium SSD 提供本地 SSD 存储空间。

    Titanium SSD 磁盘直接挂接到其主机服务器内的计算实例。

  • 本地 SSD:本地 SSD 是 Google Cloud的原始本地 SSD 功能。 挂接到实例的每个本地 SSD 磁盘提供 375 GiB 的容量。这些磁盘的性能比 Hyperdisk 或 Persistent Disk 更高。您可以使用 NVMe 或 SCSI 接口挂载本地 SSD 磁盘。

    本地 SSD 磁盘直接挂接到其主机服务器内的实例。

在描述本地 SSD 磁盘的功能时,除非明确提及 Titanium SSD,否则“本地 SSD”一词同时适用于本地 SSD 和 Titanium SSD。

性能

本地 SSD 性能取决于多种因素,包括挂接的本地 SSD 磁盘的数量、选择的磁盘接口(NVMeSCSI)以及实例的机器类型。当您将更多本地 SSD 磁盘挂接到实例时,可用的性能会提高。

本地 SSD 性能(按挂接的磁盘数量)

下表列出了使用 NVMe 和 SCSI 挂接的本地 SSD 磁盘的最大 IOPS 和吞吐量。指标按挂接到实例的本地 SSD 磁盘的总容量列出。

Titanium SSD 性能

下表列出了 C4AZ3 实例上 Titanium SSD 磁盘的性能限制。

挂接的 Titanium SSD 磁盘数量
总存储空间 (GiB) IOPS 吞吐量
(MiBps)
读取 写入 读取 写入
1 375 150000 75000 650 330
2 750 300000 150000 1,300 660
4 1500 60 万 300000 2,600 1,320
6 2250 900000 450,000 3,900 1980
10 3750 1,500,000 750000 6,500 3,300
14 5,250 2,100,000 1,050,000 9,100 4,620
16 6000 2400000 1,200,000 10,400 5,280
Z3 机器系列(3 TiB 磁盘)
12 36,000 6,000,000 6,000,000 36,000 30000

NVMe 本地 SSD 性能

下表列出了使用 NVMe 挂接到实例的本地 SSD 磁盘的性能限制。

挂接的
本地 SSD 磁盘数量
总存储空间 (GiB) 每个磁盘的容量 (GiB) IOPS 吞吐量
(MiBps)
读取 写入 读取 写入
1 375 375 170000 90,000 660 350
2 750 375 340000 180,000 1,320 700
3 1125 375 510000 270,000 1980 1050
4 1500 375 680000 360,000 2,650 1400
5 1875 375 680000 360,000 2,650 1400
6 2250 375 680000 360,000 2,650 1400
7 2625 375 680000 360,000 2,650 1400
8 3000 375 680000 360,000 2,650 1400
16 6000 375 1,600,000 800,000 6,240 3120
24 9000 375 2400000 1,200,000 9,360 4680
32 12000 375 3,200,000 1,600,000 12,480 6240

SCSI 本地 SSD 性能

下表列出了使用 SCSI 挂接到实例的本地 SSD 磁盘的性能限制。

本地 SSD
磁盘总数
存储空间 (GiB) IOPS 吞吐量
(MiBps)
读取 写入 读取 写入
1 375 100000 70,000 390 270
2 750 200,000 140,000 780 550
3 1125 300000 210,000 1,170 820
4 1,500 400000 280,000 1,560 1090
5 1875 400000 280,000 1,560 1090
6 2250 400000 280,000 1,560 1090
7 2625 400000 280,000 1,560 1090
8 3000 400000 280,000 1,560 1090
16 6000 900000 80 万 6,240 3120
24 9000 900000 80 万 9,360 4680

配置实例以最大限度地提高性能

要达到上述性能水平,您必须按如下方式配置计算实例:

  • 使用 NVMe 接口挂接本地 SSD 磁盘。使用 SCSI 接口挂接的磁盘性能较低。

  • 以下机器类型还需要最小 vCPU 数量,才能达到这些最大值:

    • N2N2DA2 机器类型至少需要 24 个 vCPU。
    • N1 机器类型至少需要 32 个 vCPU。
  • 如果您的实例使用自定义 Linux 映像,则该映像必须使用 4.14.68 版或更高版本的 Linux 内核。如果您使用 Compute Engine 提供的公共映像,则无需执行任何进一步操作。

如需了解可以提高本地 SSD 性能的其他实例和磁盘配置设置,请参阅优化本地 SSD 性能

如需详细了解如何选择磁盘接口,请参阅选择磁盘接口

本地 SSD 数据持久性

在某些情况下,Compute Engine 会保留本地 SSD 磁盘上的数据,而在其他情况下,Compute Engine 不保证本地 SSD 数据的持久性。

以下信息描述了这些场景,并适用于挂接到实例的每个本地 SSD 磁盘。

Compute Engine 保留本地 SSD 数据的场景

只有在发生以下事件时,本地 SSD 磁盘上的数据才会保留:

Compute Engine 可能无法持久保留本地 SSD 数据的场景

如果实例上发生主机错误,并且 Compute Engine 无法在指定时间内将实例重新连接到本地 SSD 磁盘,则本地 SSD 磁盘上的数据可能会丢失。

您可以使用本地 SSD 恢复超时来控制尝试恢复数据所用的时间(如果有)。如果 Compute Engine 在超时之前无法重新连接到磁盘,则实例会重启。实例重启时,本地 SSD 数据不可恢复。Compute Engine 会将空白本地 SSD 磁盘挂接到重启的实例。

本地 SSD 恢复超时是实例主机维护政策的一部分。如需了解详情,请参阅本地 SSD 恢复超时

Compute Engine 不持久保留本地 SSD 数据的场景

发生以下事件时,本地 SSD 磁盘上的数据不会持久保留:

如果 Compute Engine 无法恢复实例的本地 SSD 数据,则 Compute Engine 会重启实例,并且实例会针对每个先前挂接的本地 SSD 磁盘装载并挂接一个本地 SSD 磁盘。

机器系列支持

您可以将本地 SSD 磁盘与以下机器系列搭配使用。

选择一个机器系列以显示其是否支持本地 SSD。

机器系列 支持本地 SSD
C4A
C4
C3
C3D
N4
N2
N2D
N1
T2D
T2A
E2
Z3
H3
C2
C2D
X4
M3
M2
M1
N1+GPU
A3 (H100)
A3 (H200)
A2
G2

不过,根据每种机器类型,您可以挂接的本地 SSD 磁盘数量会受到相应的限制。如需了解详情,请参阅选择有效的本地 SSD 磁盘数量

限制

本地 SSD 具有以下限制:

  • 您无法将本地 SSD 磁盘与共享核心机器类型的虚拟机搭配使用。

  • 您不能将本地 SSD 磁盘挂接到使用 N4、H3、M2 E2 或 Tau T2A 机器类型的实例。

  • 您不能将客户提供的加密密钥或客户管理的加密密钥用于本地 SSD 磁盘。Compute Engine 在数据写入本地 SSD 存储空间时会自动加密数据。

  • 您无法使用快照、克隆、机器映像或映像来备份本地 SSD 磁盘。将重要数据存储在 Hyperdisk 或 Persistent Disk 卷上。

本地 SSD 加密

Compute Engine 在数据写入本地 SSD 磁盘时会自动加密数据。您不能将客户提供的加密密钥用于本地 SSD 磁盘。

本地 SSD 数据备份

由于您无法使用磁盘映像、标准快照或磁盘克隆来备份本地 SSD 数据,因此 Google 建议您始终将有价值的数据存储在持久性存储选项中。

如果您需要保留本地 SSD 磁盘上的数据,请将 Persistent Disk 永久性磁盘或 Google Cloud Hyperdisk 挂接到实例。装载 Persistent Disk 永久性磁盘或 Hyperdisk 后,将数据从本地 SSD 磁盘复制到新挂接的磁盘。

选择磁盘接口

为实现最高的本地 SSD 性能,您必须将磁盘挂接到使用 NVMe 接口的实例。如果使用 SCSI 接口,性能会降低。

您选择的磁盘接口还取决于实例使用的机器类型和操作系统。Compute Engine 中的某些可用机器类型允许您选择 NVMe 或 SCSI 接口,而其他机器类型仅支持 NVMe 或 SCSI 之一。同样,Compute Engine 提供的某些公共操作系统映像可能同时支持 NVMe 和 SCSI,也可能仅支持两者之一。

磁盘接口支持(按机器类型和操作系统映像)

以下页面详细介绍了可用的机器类型和支持的公共映像,以及性能详情。

  • 各个机器类型支持的接口:请参阅机器系列比较。在选择要比较的虚拟机属性列表中,选择磁盘接口类型

  • 操作系统映像:如需查看 Compute Engine 提供的哪些公共操作系统映像支持 SCSI 或 NVMe,请参阅操作系统详细信息文档中每个表的接口标签页。

自定义映像的 NVMe 的注意事项

如果您的实例使用自定义 Linux 映像,您必须使用 4.14.68 或更高版本的 Linux 内核,以获得最佳 NVMe 性能。

自定义映像的 SCSI 的注意事项

如果您的现有设置需要使用 SCSI 接口,请考虑使用多队列 SCSI,以实现比标准 SCSI 接口更好的性能。

如果您使用的是导入的自定义映像,请参阅启用多队列 SCSI

选择有效的本地 SSD 磁盘数量

Compute Engine 上提供的大多数机器类型支持本地 SSD 磁盘。某些机器类型始终默认包含固定数量的本地 SSD 磁盘,而其他机器类型则允许您添加特定数量的磁盘。您只能在创建实例时添加本地 SSD 磁盘。实例创建后无法添加本地 SSD 磁盘。

对于使用存储优化型 Z3 机器类型创建的实例,每个挂接的钛合金 SSD 磁盘的容量为 3,000 GiB。对于所有其他机器系列,您挂接的每个本地 SSD 磁盘的容量为 375 GiB。

自动挂接本地 SSD 磁盘的机器类型

下表列出了默认包含本地 SSD 磁盘的机器类型,并显示了在创建实例时挂接的磁盘数量。

机器类型 每个实例自动挂接的
本地 SSD 磁盘数量
C4A 机器类型
只有 C4A 机器类型的 -lssd 变体支持本地 Titanium SSD。
c4a-standard-4-lssd
c4a-highmem-4-lssd
1
c4a-standard-8-lssd
c4a-highmem-8-lssd
2
c4a-standard-16-lssd
c4a-highmem-16-lssd
4
c4a-standard-32-lssd
c4a-highmem-32-lssd
6
c4a-standard-48-lssd
c4a-highmem-48-lssd
10
c4a-standard-64-lssd
c4a-highmem-64-lssd
14
c4a-standard-72-lssd
c4a-highmem-72-lssd
16
C3 机器类型
只有 C3 机器类型的 -lssd 变体支持本地 SSD
c3-standard-4-lssd 1
c3-standard-8-lssd 2
c3-standard-22-lssd 4
c3-standard-44-lssd 8
c3-standard-88-lssd 16
c3-standard-176-lssd 32
C3D 机器类型
只有 C3D 机器类型的 -lssd 变体支持本地 SSD
c3d-standard-8-lssd
c3d-highmem-8-lssd
1
c3d-standard-16-lssd
c3d-highmem-16-lssd
1
c3d-standard-30-lssd
c3d-highmem-30-lssd
2
c3d-standard-60-lssd
c3d-highmem-60-lssd
4
c3d-standard-90-lssd
c3d-highmem-90-lssd
8
c3d-standard-180-lssd
c3d-highmem-180-lssd
16
c3d-standard-360-lssd
c3d-highmem-360-lssd
32
A3 Ultra 机器类型
a3-ultragpu-8g 32
A3 Mega 机器类型
a3-megagpu-8g 16
A3 High 机器类型
a3-highgpu-1g 2
a3-highgpu-2g 4
a3-highgpu-4g 8
a3-highgpu-8g 16
A3 Edge 机器类型
a3-edgegpu-8g 16
A2 Ultra 机器类型
a2-ultragpu-1g 1
a2-ultragpu-2g 2
a2-ultragpu-4g 4
a2-ultragpu-8g 8
使用 Titanium SSD 的 Z3 实例
每个磁盘的大小为 3 TiB。
z3-highmem-88 12
z3-highmem-176 12

需要您选择本地 SSD 磁盘数量的机器类型

下表中列出的机器类型不会自动将本地 SSD 磁盘挂接到新创建的实例。由于您无法在创建实例后向其添加本地 SSD 磁盘,因此请使用本部分中的信息来确定在创建实例时要挂接多少个本地 SSD 磁盘。

N1 机器类型 每个实例允许的本地 SSD 磁盘数
配备 T4 GPU 的机器类型 1 到 8、16
所有其他机器类型 1 - 8、16 或 24 个
N2 机器类型
具有 2 - 10 个 vCPU 的机器类型 1、2、4、8、16 或 24
具有 12 - 20 个 vCPU 的机器类型 2、4、8、16 或 24
具有 22 - 40 个 vCPU 的机器类型 4、8、16 或 24
具有 42 - 80 个 vCPU 的机器类型 8、16 或 24
具有 82 个到 128 个 vCPU(含 82 和 128)的机器类型 16 或 24
N2D 机器类型
具有 2 - 16 个 vCPU 的机器类型 1、2、4、8、16 或 24
具有 32 个或 48 个 vCPU 的机器类型 2、4、8、16 或 24
具有 64 个或 80 个 vCPU 的机器类型 4、8、16 或 24
具有 96 - 224 个 vCPU 的机器类型 8、16 或 24
C2 机器类型
具有 4 或 8 个 vCPU 的机器类型 1、2、4 或 8
具有 16 个 vCPU 的机器类型 2、4 或 8
具有 30 个 vCPU 的机器类型 4 或 8
具有 60 个 vCPU 的机器类型 8
C2D 机器类型
具有 2 - 16 个 vCPU 的机器类型 1、2、4、8
具有 32 个 vCPU 的机器类型 2、4、8
具有 56 个 vCPU 的机器类型 4、8
具有 112 个 vCPU 的机器类型 8
A2 标准机器类型
a2-highgpu-1g 1、2、4 或 8
a2-highgpu-2g 2、4 或 8
a2-highgpu-4g 4 或 8
a2-highgpu-8ga2-megagpu-16g 8
G2 机器类型
g2-standard-4 1
g2-standard-8 1
g2-standard-12 1
g2-standard-16 1
g2-standard-24 2
g2-standard-32 1
g2-standard-48 4
g2-standard-96 8
M1 机器类型
m1-ultramem-40 不可用
m1-ultramem-80 不可用
m1-megamem-96 1 至 8
m1-ultramem-160 不可用
M3 机器类型
m3-ultramem-32 4、8
m3-megamem-64 4、8
m3-ultramem-64 4、8
m3-megamem-128 8
m3-ultramem-128 8
E2、C3-metal、M2、N4、Tau T2D、Tau T2A 和 X4 机器类型 这些机器类型不支持本地 SSD 磁盘。

价格

对于您创建的每个本地 SSD 磁盘,您需要按照它挂接到的实例生命周期内的总磁盘容量付费。

如需详细了解本地 SSD 价格和可用折扣,请参阅本地 SSD 价格

本地 SSD 磁盘和 Spot 虚拟机实例

如果您启动具有本地 SSD 磁盘的 Spot 虚拟机或抢占式虚拟机,则 Compute Engine 将按本地 SSD 使用量收取提供折扣的 Spot 价格。挂接到 Spot 虚拟机或抢占式虚拟机的本地 SSD 磁盘的工作方式类似于普通的本地 SSD 磁盘,它们保留相同的数据持久性特性,并在生命周期内保持挂接状态虚拟机。

如果 Compute Engine 在虚拟机开始运行后一分钟内被抢占,则 Compute Engine 不会针对 Spot 虚拟机或抢占式虚拟机上的本地 SSD 磁盘使用费向您收费。

预留可享受承诺使用折扣的本地 SSD 磁盘

如需预留特定可用区中的本地 SSD 资源,请参阅预留 Compute Engine 可用区级资源

如需获得特定可用区中本地 SSD 磁盘的承诺使用折扣,您必须为本地 SSD 资源购买基于资源的承诺,并将指定匹配本地 SSD 资源的预留附加到您的承诺。如需了解详情,请参阅将预留附加到基于资源的承诺

将本地 SSD 磁盘与实例搭配使用

如需将本地 SSD 磁盘与计算实例搭配使用,您必须完成以下步骤:

Linux 实例上的设备命名

挂接到实例的磁盘的 Linux 设备名称取决于您在创建磁盘时选择的接口。使用 lsblk 操作系统命令查看磁盘设备时,它会显示通过 NVMe 接口连接的磁盘的前缀 nvme,以及通过 SCSI 接口连接的磁盘的前缀 sd

磁盘编号或 NVMe 控制器的顺序在实例重启后是无法预测的,也可能不会保持一致。首次启动时,磁盘可能是 nvme0n1(或 sda,对于 SCSI)。第二次启动时,同一磁盘的设备名称可能是 nvme2n1nvme0n3(或 sdc,对于 SCSI)。

访问挂接的磁盘时,您应改用在 /dev/disk/by-id/ 中创建的符号链接。这些名称会在重新启动后保留。如需详细了解符号链接,请参阅挂接到实例的磁盘的符号链接

如需详细了解设备名称,请参阅Linux 实例上的设备命名

停止或暂停具有本地 SSD 磁盘的虚拟机

当您停止暂停虚拟机时,Compute Engine 默认会舍弃挂接到该虚拟机的所有本地 SSD 磁盘的数据。当您恢复虚拟机时,挂接到虚拟机的所有本地 SSD 磁盘都是空白的。

在停止或暂停虚拟机时保留本地 SSD 数据

停止或暂停虚拟机时,您可以选择保留挂接到虚拟机的本地 SSD 磁盘上的数据。

当停止或暂停操作开始时,Compute Engine 会以代管方式将本地 SSD 磁盘数据迁移到持久性存储空间。当您恢复或重启虚拟机时,Compute Engine 会将保留的数据复制到挂接到该虚拟机的本地 SSD 磁盘。恢复或重启虚拟机后,您可能需要将本地 SSD 磁盘重新装载到文件系统中

在您重启或恢复虚拟机之前,系统会按用于保留本地 SSD 数据的存储空间向您收费。已使用的存储空间会消耗项目的 Persistent disk standard GB 配额

限制

  • 保留本地 SSD 数据功能目前仅处于预览版阶段,不遵守 Compute Engine 正式版条款。
  • 您无法将此功能与 Z3 实例搭配使用。
  • 如果您停止或暂停挂接了 32 个以上本地 SSD 磁盘的虚拟机,则无法保留本地 SSD 数据。
  • 如果您通过Google Cloud 控制台停止或暂停虚拟机,则无法保留本地 SSD 数据。
  • 保存本地 SSD 数据的过程非常缓慢,只有在暂停或停止操作开始后才会开始。
  • 如果您使用的是 Spot 虚拟机或抢占式虚拟机,并且选择在暂停或停止操作期间保留本地 SSD 数据,那么如果 Compute Engine 在停止或暂停操作期间抢占了虚拟机,则本地 SSD 数据会丢失

如需了解如何在停止或暂停虚拟机时保留本地 SSD 数据,请分别参阅停止具有本地 SSD 磁盘的实例暂停具有本地 SSD 磁盘的实例

删除本地 SSD 磁盘

如需移除或删除本地 SSD 磁盘,您必须删除这些磁盘挂接的虚拟机。除非您删除虚拟机,否则无法删除本地 SSD 磁盘。

删除已挂接本地 SSD 磁盘的虚拟机之前,请确保将本地 SSD 磁盘上的所有关键数据迁移到 Persistent Disk、Hyperdisk 或其他虚拟机。否则,本地 SSD 磁盘上的数据将永久丢失。

后续步骤

了解如何创建具有本地 SSD 磁盘的虚拟机