8.11. 使用虚拟可信平台模块设备


通过编辑 VirtualMachine (VM)或 VirtualMachineInstance (VMI)清单,将虚拟 Trusted Platform 模块(vTPM)设备添加到新的或现有虚拟机中。

重要

在 OpenShift Virtualization 4.18 及更新版本中,您可以导出附加了 vTPM 设备的虚拟机 (VM),创建这些虚拟机的快照,以及从这些快照中恢复虚拟机。但是,不支持克隆附加了 vTPM 设备的虚拟机,也不支持使用其快照创建一个新的虚拟机。

8.11.1. 关于 vTPM 设备

虚拟可信平台模块(vTPM)设备功能,如物理信任平台模块(TPM)硬件芯片。您可以将 vTPM 设备与任何操作系统一起使用,但 Windows 11 需要存在 TPM 芯片用来安装或引导的 TPM 芯片。vTPM 设备允许从 Windows 11 镜像创建的虚拟机在没有物理 TPM 芯片的情况下正常工作。

OpenShift Virtualization 支持为虚拟机使用持久性卷声明 (PVC) 来持久保留 vTPM 设备状态。如果没有为这个 PVC 指定存储类,OpenShift Virtualization 将默认存储类用于虚拟化工作负载。如果没有设置虚拟化工作负载的默认存储类,OpenShift Virtualization 会将默认存储类用于集群。

注意

为虚拟化工作负载标记为 default 的存储类会将注解 storageclass.kubevirt.io/is-default-virt-class 设置为 "true"。您可以运行以下命令来找到这个存储类:

$ oc get sc -o jsonpath='{range .items[?(.metadata.annotations.storageclass\.kubevirt\.io/is-default-virt-class=="true")]}{.metadata.name}{"\n"}{end}'
Copy to Clipboard Toggle word wrap

同样,集群的默认存储类会将注解 storageclass.kubernetes.io/is-default-class 设置为 "true"。要找到这个存储类,请运行以下命令:

$ oc get sc -o jsonpath='{range .items[?(.metadata.annotations.storageclass\.kubernetes\.io/is-default-class=="true")]}{.metadata.name}{"\n"}{end}'
Copy to Clipboard Toggle word wrap

为确保一致的行为,请分别配置一个存储类作为虚拟化工作负载和集群的默认值。

建议您通过在 HyperConverged 自定义资源(CR)中设置 vmStateStorageClass 属性来显式指定存储类:

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

# ...
Copy to Clipboard Toggle word wrap

如果没有启用 vTPM,则虚拟机无法识别 TPM 设备,即使节点有一个。

8.11.2. 将 vTPM 设备添加到虚拟机

将虚拟 Trusted Platform 模块(vTPM)设备添加到虚拟机(VM)可让您从 Windows 11 镜像创建的虚拟机,而无需物理 TPM 设备。vTPM 设备还存储该虚拟机的 secret。

先决条件

  • 已安装 OpenShift CLI(oc)。

流程

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

    $ oc edit vm <vm_name> -n <namespace>
    Copy to Clipboard Toggle word wrap
  2. 编辑虚拟机规格以添加 vTPM 设备。例如:

    apiVersion: kubevirt.io/v1
    kind: VirtualMachine
    metadata:
        name: example-vm
    spec:
      template:
        spec:
          domain:
            devices:
              tpm:  
    1
    
                persistent: true 
    2
    
    # ...
    Copy to Clipboard Toggle word wrap
    1
    将 vTPM 设备添加到虚拟机。
    2
    指定 vTPM 设备状态在虚拟机关闭后保留。默认值为 false
  3. 若要应用您的更改,请保存并退出编辑器。
  4. 可选:如果编辑了正在运行的虚拟机,您必须重启它才能使更改生效。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat