本文档介绍了 Compute Engine 实例的生命周期,涵盖了实例从创建到删除可能经历的各种状态。如需了解如何检查一个或多个实例的状态,请参阅以下内容:
了解实例的生命周期后,您可以更有效地执行以下操作:
排查实例问题。
管理实例资源。
规划实例迁移。
实例状态
计算实例在其生命周期中可在不同状态之间转换。创建实例时,Compute Engine 会预配资源以启动实例,之后实例会进入预演阶段并准备首次启动。实例启动后,即被视为正在运行。正在运行的实例可以反复停止和重启,也可以反复暂停和恢复,直到该实例被删除。
下图显示了 Compute Engine 可以将实例设置为的不同状态:
上图中展示的状态包括:
PENDING
:创建等待时间 (requestValidForDuration
) 为 90 秒或更长的独立灵活启动虚拟机后,虚拟机的状态会更改为PENDING
。在此状态下,Compute Engine 会尝试获取启动虚拟机所需的资源,直到等待时间结束。如果 Compute Engine 在此时间内获取了资源,并且您有足够的资源配额,则虚拟机的状态会更改为PROVISIONING
。否则,您会遇到错误,并且 Compute Engine 会删除 Flex-start 虚拟机。如果您不再需要灵活启动虚拟机,可以选择在等待时间结束之前将其删除。PROVISIONING
:在您创建、重启或恢复实例后,Compute Engine 会为该实例分配资源。STAGING
:Compute Engine 正在准备实例以进行首次启动,原因如下:Compute Engine 仍在创建和配置实例。
您或预定操作请求重启或恢复实例。
在此状态下,实例尚未运行。
RUNNING
:Compute Engine 正在启动实例,或者实例正在运行。在此状态下,您可以停止、暂停或删除实例。此外,Compute Engine 可以停止或删除实例以执行预定操作,或者在发生硬件错误且实例属于代管式实例组 (MIG) 时修复实例。PENDING_STOP
:实例正在正常关停。只有在您启用了正常关停,并且您已请求停止或删除实例,或者 Compute Engine 因预定停止或删除而自动执行此操作时,才会发生此关停过程。当发生以下任一情况时,实例状态会更改为STOPPING
:您手动结束正常关停。
正常关停时间段超时。如果有任何任务仍在运行,Compute Engine 会强制停止这些任务。
STOPPING
:实例正在关停其客户机操作系统,这会在以下情况下发生:您或预定操作请求停止或删除实例。
发生了硬件错误。
除非您将实例配置为跳过客机操作系统关停,否则关停时间取决于实例类型。不过,如果实例因硬件错误而停止,关停时间可能会与预期时长不同。在客机操作系统关闭后,Compute Engine 会视运行中的操作执行下列操作之一:
Compute Engine 会完成停止操作,并将实例状态更改为
TERMINATED
。Compute Engine 会删除该实例和所有挂接的资源。
TERMINATED
:Compute Engine 已完成停止操作。除非您分离已关联的资源,否则已关联的资源会保持关联状态。在此状态下,实例会一直处于停止状态,直到您重启或删除实例。如果您请求重启实例,但 Compute Engine 无法分配您请求的资源,则重启请求会失败,并且实例会保持TERMINATED
状态。否则,重启请求会成功,实例状态会更改为PROVISIONING
。REPAIRING
:Compute Engine 正在修复实例。 如果实例遇到内部错误或因维护而无法使用实例的主机服务器,Compute Engine 会修复该实例。当实例处于修复状态时,会发生以下情况:您无法使用该实例。
服务等级协议 (SLA) 不涵盖此实例。
如果 Compute Engine 成功修复了实例,则会将实例状态恢复到修复操作开始之前的原始状态。此状态可以是
STAGING
、RUNNING
、SUSPENDING
或STOPPING
。如果您的实例配置为在修复操作完成后自动重启 (automaticRestart
),则可以选择在修复过程中停止该实例。此操作可防止实例在修复完成后自动重启,从而使实例处于TERMINATED
状态。SUSPENDING
:在您请求暂停实例后,Compute Engine 已开始实例的暂停操作。在此状态下,您只能等待挂起操作完成。SUSPENDED
:Compute Engine 已完成暂停操作。在此状态下,您可以恢复或删除实例。如果您请求恢复实例,但 Compute Engine 无法分配您请求的资源,则恢复请求会失败,并且实例会保持SUSPENDED
状态。否则,恢复请求会成功,并且实例状态会更改为PROVISIONING
。实例可以保持SUSPENDED
状态,最长可达 60 天。之后,Compute Engine 会将实例状态更改为TERMINATED
。
硬件故障
在极少数情况下,计算实例可能会由于意外服务中断、硬件错误或其他系统问题而出现故障。Google 建议您使用永久性存储卷、定期备份数据,并设计系统以确保单个实例故障不会造成灾难性的影响,从而缓解硬件故障。如需了解详情,请参阅如何设计可靠的系统。
如果实例出现故障,Compute Engine 会使用相同的启动磁盘、元数据和实例设置来自动重启实例。如需修改实例的自动重启行为,请参阅为计算实例设置主机维护政策。
价格
您需要按以下方式为计算实例支付费用:
对于 CPU 用量,当实例处于以下状态时,您需要支付费用:
RUNNING
PENDING_STOP
对于内存用量面,当实例处于以下状态时,您需要支付费用:
RUNNING
PENDING_STOP
SUSPENDING
SUSPENDED
对于磁盘或外部 IP 地址等关联资源,无论实例处于何种状态,您都需要为其支付费用,直到资源不存在为止。
如需了解详情,请参阅虚拟机实例价格。
后续步骤
执行以下操作,查看一个或多个计算实例的状态: