10.15. 在新 Windows 虚拟机上安装 VirtIO 驱动程序

10.15.1. 先决条件

10.15.2. 关于 VirtIO 驱动程序

VirtIO 驱动程序是 Microsoft Windows 虚拟机在 OpenShift Virtualization 中运行时所需的半虚拟化设备驱动程序。受支持的驱动程序可在 红帽生态系统目录container-native-virtualization/virtio-win 容器磁盘中找到。

必须将 container-native-virtualization/virtio-win 容器磁盘作为 SATA CD 驱动器附加到虚拟机,以启用驱动程序安装。您可在虚拟机安装 Windows 期间安装 VirtIO 驱动程序,或将其附加到现有 Windows 安装。

安装完驱动程序后,可从虚拟机中移除 container-native-virtualization/virtio-win 容器磁盘。

另请参阅:在现有 Windows 虚拟机上安装 VirtIO 驱动程序

10.15.3. Microsoft Windows 虚拟机支持的 VirtIO 驱动程序

表 10.2. 支持的驱动程序

驱动程序名称硬件 ID描述

viostor

VEN_1AF4&DEV_1001
VEN_1AF4&DEV_1042

块驱动程序。有时会在 Other devices 组中显示为 SCSI Controller

viorng

VEN_1AF4&DEV_1005
VEN_1AF4&DEV_1044

熵源(entropy)驱动程序。有时会在 Other devices 组中显示为 PCI Device

NetKVM

VEN_1AF4&DEV_1000
VEN_1AF4&DEV_1041

网络驱动程序。有时会在 Other devices 组中显示为 Ethernet Controller。仅在配置了 VirtIO NIC 时可用。

10.15.4. 将 VirtIO 驱动程序容器磁盘添加到虚拟机中

针对 Microsoft Windows 的 OpenShift Virtualization VirtIO 驱动程序作为一个容器磁盘提供,可在 Red Hat Ecosystem Catalog 中找到。要为 Windows 虚拟机安装这些驱动程序,请在虚拟机配置文件中将 container-native-virtualization/virtio-win 容器磁盘作为 SATA CD 驱动器附加到虚拟机。

先决条件

  • Red Hat Ecosystem Catalog 下载 container-native-virtualization/virtio-win 容器磁盘。这一步并非强制要求,因为如果集群中不存在容器磁盘,将从 Red Hat registry 中下载,但通过此步下载可节省安装时间。

流程

  1. container-native-virtualization/virtio-win 容器磁盘作为 cdrom 磁盘添加到 Windows 虚拟机配置文件中。如果集群中还没有容器磁盘,将从 registry 中下载。

    spec:
      domain:
        devices:
          disks:
            - name: virtiocontainerdisk
              bootOrder: 2 1
              cdrom:
                bus: sata
    volumes:
      - containerDisk:
          image: container-native-virtualization/virtio-win
        name: virtiocontainerdisk
    1
    OpenShift Virtualization 按照 VirtualMachine 配置文件中定义的顺序启动虚拟机磁盘。您可将虚拟机的其他磁盘定义到 container-native-virtualization/virtio-win 容器磁盘前面,也可使用 bootOrder 可选参数来确保虚拟机从正确磁盘启动。如果为一个磁盘指定 bootOrder,则必须为配置中的所有磁盘指定。
  2. 虚拟机启动后,磁盘随即可用:

    • 如果要将容器磁盘添加到正在运行的虚拟机,请在 CLI 中执行 oc apply -f <vm.yaml>,或重启虚拟机,以使更改生效。
    • 如果虚拟机还未运行,则使用 virtctl start <vm>

虚拟机启动后,可从附加的 SATA CD 驱动器安装 VirtIO 驱动程序。

10.15.5. 在 Windows 安装过程中安装 VirtIO 驱动程序

在 Windows 安装过程中,从附加的 SATA CD 驱动程序安装 VirtIO 驱动程序。

注意

该流程使用通用方法安装 Windows,且安装方法可能因 Windows 版本而异。有关您要安装的 Windows 版本,请参阅相关文档。

步骤

  1. 启动虚拟机并连接至图形控制台。
  2. 开始 Windows 安装过程。
  3. 选择 Advanced 安装。
  4. 加载驱动程序前无法识别存储目的地。点击 Load driver
  5. 驱动程序将附加为 SATA CD 驱动器。点击 OK 并浏览 CD 驱动器以加载存储驱动程序。驱动程序将按照其驱动程序类型、操作系统和 CPU 架构分层排列。
  6. 对所有所需驱动程序重复前面两步。
  7. 完成 Windows 安装。

10.15.6. 从虚拟机移除 VirtIO 容器磁盘

在向虚拟机安装完所有所需 VirtIO 驱动程序后,container-native-virtualization/virtio-win 容器磁盘便不再需要附加到虚拟机。从虚拟机配置文件中移除 container-native-virtualization/virtio-win 容器磁盘。

流程

  1. 编辑配置文件并移除 diskvolume

    $ oc edit vm <vm-name>
    spec:
      domain:
        devices:
          disks:
            - name: virtiocontainerdisk
              bootOrder: 2
              cdrom:
                bus: sata
    volumes:
      - containerDisk:
          image: container-native-virtualization/virtio-win
        name: virtiocontainerdisk
  2. 重启虚拟机以使更改生效。