虚拟机实例生命周期

本文档介绍单个虚拟机 (VM) 实例从创建到可能被删除的生命周期。

虚拟机实例在其生命周期中可在多个状态之间转换。创建虚拟机时,Compute Engine 会预配资源以启动虚拟机。接下来,虚拟机进入暂存阶段,准备进行首次启动。在启动期间和启动后,我们将虚拟机视为正在运行。正在运行的虚拟机可以在其生命周期内反复停止和重启,也可以反复暂停和恢复。

虚拟机可能处于以下任一状态:

  • PROVISIONING:为虚拟机分配的资源。虚拟机尚未运行。
  • STAGING:获取资源,虚拟机正在准备首次启动。
  • RUNNING - 虚拟机正在启动或运行。
  • STOPPING:虚拟机正在停止。您请求停止,或者出现了故障。这是虚拟机进入 TERMINATED 状态后的临时状态。
  • REPAIRING:正在修复虚拟机。当虚拟机遇到内部错误或底层机器由于维护而不可用时,会进行修复。在此期间,虚拟机无法使用。如果修复成功,则虚拟机会返回上述状态之一。
  • TERMINATED:虚拟机已停止。您已停止虚拟机,或者虚拟机发生故障。您可以重启删除虚拟机。
  • SUSPENDING:虚拟机正在暂停。您暂停了虚拟机。
  • SUSPENDED:虚拟机处于暂停状态。您可以恢复虚拟机或删除虚拟机。

下图展示了每种虚拟机状态之间的转换:

虚拟机实例生命周期。

停止、暂停或重置虚拟机

如果您不再需要虚拟机,但希望保留其将来使用,则可以停止或暂停该虚拟机。具体决定是暂停还是暂停虚拟机,取决于您是否需要保留其访客操作系统内存和应用状态。

暂停或停止虚拟机时,请考虑以下几点:

  • 您无需为已暂停或已停止的虚拟机付费。
  • 您需要为仍然挂接到已暂停或已停止的虚拟机的资源(例如静态 IP 和永久性磁盘数据)付费。
  • 虚拟机发布了临时外部 IP 地址。当您重启或恢复虚拟机时,Google 将分配新的临时外部 IP 地址。如果您希望临时外部 IP 地址通过重启保持不变,则应提升临时外部 IP
  • 静态外部 IP 地址会保留。

停止虚拟机

停止虚拟机会导致 Compute Engine 向虚拟机发送 ACPI 关停信号。最新的客机操作系统被配置为在关闭电源之前执行彻底关闭,以响应关闭电源信号。Compute Engine 会等待片刻以待客机完成关闭,然后将虚拟机转换为 TERMINATED 状态。

您可能会由于多种原因停止虚拟机:

  • 您不再需要虚拟机,但希望挂接到虚拟机的资源,如其内部 IP、MAC 地址和永久性磁盘。
  • 您无需保留访客操作系统内存、设备状态或应用状态。
  • 您希望更改虚拟机的某些属性,需要首先停止虚拟机。

您需要再次使用时,可以重启已终止的虚拟机

暂停虚拟机

暂停虚拟机会向虚拟机的操作系统发送 ACPI S3 暂停信号。暂停虚拟机非常类似于关闭笔记本电脑的盖子或将虚拟机置于暂停状态。暂停虚拟机后,状态将转换为 SUSPENDED 状态。

出于以下原因,您可能希望暂停虚拟机:

  • 目前您不需要虚拟机,但是想要在其操作系统和应用状态已经初始化的情况下快速恢复虚拟机。
  • 您无需因向 Google 付费而保留虚拟机状态。

当您需要再次使用时,可以恢复已暂停的虚拟机

重置虚拟机

或者,您也可以重置虚拟机以擦除虚拟机的内存内容,并将虚拟机重置为初始状态。重置虚拟机会导致虚拟机立即硬重置;虚拟机不会正常关闭客机操作系统。但是,虚拟机会保留所有永久性磁盘数据,并且所有虚拟机属性都不会更改。虚拟机通过重置保持 RUNNING 状态。

对照表

下表显示了停止、暂停和重置虚拟机如何影响虚拟机及其资源:

停止 暂停 重置
结算 Google 不会对处于 TERMINATED 状态的虚拟机资源收费。 Google 会对存储已暂停虚拟机的保留状态收费。 由于虚拟机在重置时保持 RUNNING 状态,因此 Google 会根据标准虚拟机价格对虚拟机收费。
虚拟机状态 TERMINATED SUSPENDED RUNNING
永久性磁盘 永久性磁盘会被保留,甚至标记为自动删除的永久性磁盘也会被保留。

您需要为与已停止的虚拟机关联的永久性磁盘付费,就像您需要为与非付费虚拟机关联的永久性磁盘付费一样。
永久性磁盘会被保留,甚至标记为自动删除的永久性磁盘也会被保留。

您需要为与已停止的虚拟机关联的永久性磁盘付费,就像您需要为与非付费虚拟机关联的永久性磁盘付费一样。
永久性磁盘会被保留,甚至标记为自动删除的永久性磁盘也会被保留。

只要虚拟机保持 RUNNING 状态,您就需要为永久性磁盘付费。
RAM 和虚拟机状态 重置为开机状态,不保存任何数据。 客机操作系统和应用状态会在虚拟机恢复后得到保留和恢复。
您需要按特定费率为存储保留的数据付费。如需了解详情,请参阅已暂停实例的结算
重置为开机状态,不保存任何数据。
GPU 数量 虚拟机停止后,GPU 将不再收费。

挂接到 TERMINATED 虚拟机的 GPU 不会计入您的项目配额。
不受支持。

如果 GPU 挂接到虚拟机,则无法暂停虚拟机。
您需要按标准 GPU 价格付费。
本地 SSD 不受支持。

您不能停止挂接了本地 SSD 的虚拟机。
不受支持。

您可以暂停具有本地 SSD 的虚拟机,但必须在进程中明确舍弃本地 SSD 数据。
保留本地 SSD。
外部临时 IP 虚拟机停止后,临时 IP 会被释放。但是当虚拟机重启时,系统会获取新的临时 IP 地址。 虚拟机暂停后,临时 IP 会被释放。但是当虚拟机重启时,系统会获取新的临时 IP 地址。 虚拟机重置后,临时 IP 地址会被释放。但是当虚拟机重启时,系统会获取新的临时 IP 地址。
外部静态 IP 静态外部 IP 会被保留。

如果虚拟机处于 TERMINATED 状态,则静态 IP 将会计费,就像它们未附加到任何虚拟机一样。如需了解详情,请参阅价格
静态外部 IP 会被保留。

如果虚拟机处于 TERMINATED 状态,则静态 IP 将会计费,就像它们未附加到任何虚拟机一样。如需了解详情,请参阅价格
静态外部 IP 会被保留。
内部 IP 或 MAC 地址 将保留内部 IP 和 MAC 地址。 将保留内部 IP 和 MAC 地址。 虚拟机删除后,系统将释放内部 IP。

系统会根据内部 IP 生成 MAC 地址。如果要重复使用 MAC 地址,请设置相同的内部 IP 地址或使用预留的内部 IP
虚拟机元数据 将保留虚拟机元数据。 虚拟机元数据会被保留。 将保留虚拟机元数据。

检查虚拟机的状态

每个虚拟机都会以虚拟机属性的形式报告其状态。在以下情况下,检查虚拟机的状态:

  • 您的虚拟机存在问题。
  • 您刚刚启动了虚拟机,想要确认虚拟机正在运行。
  • 您希望确认虚拟机已暂停或已停止(即处于 TERMINATED 状态)。

要列出所有虚拟机及其状态,请使用以下命令:

gcloud compute instances list

要描述单个实例的状态,请使用以下命令:

gcloud compute instances describe example-instance

后续步骤