如果 ESXi 主机无法从 vCenter Server 获取加密虚拟机或加密虚拟磁盘的密钥 (KEK),则加密虚拟机将锁定。使密钥在密钥服务器 (KMS) 上可用后,您可以解锁锁定的加密虚拟机。
在某些情况下,使用标准密钥提供程序时,ESXi 主机无法从 vCenter Server 获取加密虚拟机或加密虚拟磁盘的密钥加密密钥 (KEK)。在这种情况下,您仍然可以取消注册或重新加载虚拟机。但是,无法执行其他虚拟机操作,例如打开虚拟机电源。在采取必要的步骤使所需密钥在密钥服务器上可用后,可以使用 vSphere Client 解锁锁定的加密虚拟机。
如果虚拟机密钥不可用,
vCenter Server 警报会向您发出通知,并且虚拟机的状态将显示为无效。虚拟机无法打开电源。如果虚拟机密钥可用,但是加密磁盘的密钥不可用,则虚拟机状态不会显示为无效。但是,虚拟机无法打开电源,并且会出现以下错误:
The disk [/path/to/the/disk.vmdk] is encrypted and a required key was not found.
注: 以下过程说明了会导致虚拟机进入锁定状态的情况、显示的相应警报和事件日志以及在每种情况下应执行的操作。
过程
- 如果 vCenter Server 系统和密钥服务器之间的连接有问题,vCenter Server 将生成虚拟机警报。此外,还会在事件日志中显示一条错误消息。
还原与密钥服务器的连接。当密钥服务器和密钥可用时,解锁锁定的虚拟机。请参见
解锁锁定的虚拟机。您也可以重新引导主机并重新注册虚拟机,以便在还原连接后解锁该虚拟机。
与密钥服务器的连接断开不会自动锁定虚拟机。如果满足以下条件,虚拟机只会进入锁定状态:
- 密钥在 ESXi 主机上不可用。
- vCenter Server 无法从密钥服务器检索密钥。
每次
ESXi 重新引导后,最好(但非必要)先启动
vCenter Server。
vCenter Server 会从密钥服务器请求具有相应 ID 的密钥,并将其提供给
ESXi。
如果还原与密钥提供程序的连接后虚拟机仍锁定,请参见解锁锁定的虚拟机。
- 如果连接已还原,请注册虚拟机。如果出现错误,或者虽然操作成功但虚拟机处于锁定状态,请验证您是否具有 vCenter Server 系统的 特权。
如果密钥可用,则不需要此特权即可打开加密虚拟机的电源。如果必须检索密钥,则需要此特权才能注册虚拟机。
- 如果密钥在密钥服务器上不再可用,vCenter Server 将生成虚拟机警报。此外,还会在事件日志中显示一条错误消息。
请求密钥服务器管理员还原密钥。如果要打开已从清单中移除且已很长时间未注册的虚拟机的电源,您可能会遇到非活动的密钥。如果您重新引导
ESXi 主机且密钥服务器不可用,也会发生这种情况。
- 使用 Managed Object Browser (MOB) 或 vSphere API 检索密钥 ID。
从
VirtualMachine.config.keyId.keyId 中检索
keyId。
- 请求密钥服务器管理员重新激活与该密钥 ID 关联的密钥。
- 还原密钥后,参见解锁锁定的虚拟机。
如果可在密钥服务器上还原此密钥,
vCenter Server 则会在下次需要时对其进行检索并推送到
ESXi 主机。
- 如果密钥服务器可供访问且 ESXi 主机已开机,但 vCenter Server 系统不可用,请按照以下步骤解锁虚拟机。
- 还原 vCenter Server 系统,或者设置不同的 vCenter Server 系统,然后与密钥服务器建立信任。
您必须使用相同的密钥提供程序名称,但密钥服务器 IP 地址可以不同。
- 重新注册所有已锁定的虚拟机。
新
vCenter Server 实例将从密钥服务器中检索密钥,并且虚拟机将解锁。
- 如果仅在 ESXi 主机上缺少密钥,则 vCenter Server 会生成虚拟机警报,并且会在事件日志中显示以下消息:
虚拟机已锁定,因为主机上缺少密钥。
vCenter Server 系统可以从密钥提供程序检索缺少的密钥。不需要手动恢复密钥。请参见
解锁锁定的虚拟机。