×

通过编辑VirtualMachine (VM) 或 VirtualMachineInstance (VMI) 清单,向新的或现有的虚拟机添加虚拟可信平台模块 (vTPM) 设备。

关于vTPM设备

虚拟可信平台模块 (vTPM) 设备的功能类似于物理可信平台模块 (TPM) 硬件芯片。

您可以将vTPM设备与任何操作系统一起使用,但Windows 11需要TPM芯片才能安装或启动。vTPM设备允许从Windows 11映像创建的虚拟机在没有物理TPM芯片的情况下运行。

如果不启用vTPM,即使节点拥有TPM设备,虚拟机也不会识别到该设备。

vTPM设备还通过存储机密信息来保护虚拟机,而无需物理硬件。OpenShift Virtualization 支持使用持久卷声明 (PVC) 来持久化虚拟机的 vTPM 设备状态。您必须通过设置HyperConverged自定义资源 (CR) 中的vmStateStorageClass属性来指定PVC使用的存储类。

kind: HyperConverged
metadata:
  name: kubevirt-hyperconverged
spec:
  vmStateStorageClass: <storage_class_name>

# ...

存储类必须是Filesystem类型,并支持ReadWriteMany (RWX) 访问模式。

向虚拟机添加vTPM设备

向虚拟机 (VM) 添加虚拟可信平台模块 (vTPM) 设备允许您在没有物理TPM设备的情况下运行从Windows 11映像创建的虚拟机。vTPM设备还会存储该虚拟机的机密信息。

先决条件
  • 您已安装OpenShift CLI (oc)。

  • 您已配置持久卷声明 (PVC) 以使用支持ReadWriteMany (RWX) 访问模式的Filesystem类型存储类。这对于vTPM设备数据在虚拟机重启后保持持久化是必要的。

步骤
  1. 运行以下命令来更新虚拟机配置:

    $ oc edit vm <vm_name> -n <namespace>
  2. 编辑虚拟机规范以添加vTPM设备。例如:

    apiVersion: kubevirt.io/v1
    kind: VirtualMachine
    metadata:
        name: example-vm
    spec:
      template:
        spec:
          domain:
            devices:
              tpm:  (1)
                persistent: true (2)
    # ...
    1 将vTPM设备添加到虚拟机。
    2 指定在虚拟机关闭后vTPM设备状态保持持久化。默认值为false
  3. 要应用更改,请保存并退出编辑器。

  4. 可选:如果您编辑的是正在运行的虚拟机,则必须重新启动它才能使更改生效。