本文档面向需要在 Anthos 虚拟机运行时中运行虚拟机的平台管理员和应用所有者。 本文档介绍如何为使用 Anthos VM Runtime 的虚拟机 (VM) 启用统一可扩展固件接口 (UEFI) 启动过程,而不是默认的 BIOS 启动过程。本文档还介绍如何启用安全启动以及如何设置模拟 smbios
字段。
须知事项
要完成本文档,您需要拥有以下资源的访问权限:
- 访问 Anthos clusters on Bare Metal 1.12.0 版 (
anthosBareMetalVersion: 1.12.0
) 或更高版本集群。您可以使用任何能够运行工作负载的集群类型。如果需要,请在 Compute Engine 上试用 Anthos clusters on Bare Metal,或查看集群创建概览。
启用 UEFI 启动
您可以为新虚拟机和现有虚拟机启用 UEFI 启动。如需在现有虚拟机中启用 UEFI 启动,虚拟机必须具有 EFI 分区。
- 创建清单以定义
VirtualMachine
或修改现有VirtualMachine
的清单。 将
firmware
字段添加到VirtualMachine
清单,如以下示例所示:apiVersion: vm.cluster.gke.io/v1 kind: VirtualMachine metadata: labels: kubevirt.io/vm: vm1 name: vm1 namespace: test-vm-ns spec: compute: cpu: vcpus: 2 memory: capacity: 4Gi interfaces: - name: eth0 networkName: pod-network default: true firmware: bootloader: type: "uefi" enableSecureBoot: false disks: - virtualMachineDiskName: disk-from-gcs boot: true readOnly: true
启用安全启动
如果为虚拟机启用了 UEFI 启动,您还可以通过将 enableSecureBoot
字段设置为 true
来启用安全启动,如下所示:
firmware:
bootloader:
type: "uefi"
enableSecureBoot: true
如需详细了解安全启动,请参阅 Compute Engine 文档中的安全启动。
提供模拟 smbios
字段
您可以设置模拟 smbios
字段(如 uuid
和 serial
),方法是将它们添加到 VirtualMachine
清单的固件字段中,如以下示例所示:
firmware:
FIELD_NAME: FIELD_VALUE
FIELD_NAME: FIELD_VALUE
将 FIELD_NAME 和 FIELD_VALUE 替换为应用所需的 smbios
字段名称和值。
使用 UEFI 或 BIOS 启动时,您可以设置模拟 smbios
字段。