Create a Virtual Machine Image#

Before you can deploy an application virtual machine (VM), prepare a reusable operating-system image that contains the guest integration components, hardware drivers, runtime libraries, and application software that the workload requires. This stage produces a validated, versioned QEMU Copy-On-Write version 2 (QCOW2) image that you upload to the OpenShift cluster as a PersistentVolumeClaim (PVC). This PVC is the source image for cloning individual VM root disks.

The next two sections describe the operating-system-specific image workflows:

  • Windows: Create an initial Windows Server 2022 VM on a build host, install the NVIDIA networking and GPU drivers, Rivermax, and the media_sender reference application. The procedure also covers the following:

    • Application validation

    • Windows and Rivermax tuning

    • Removal of credentials and license files

    • Sysprep generalization

    • Creation of a release snapshot

    • Export to a standalone QCOW2 image

    • Upload to a versioned PVC with virtctl

  • Linux: Start from a supported Linux cloud image or install Linux into a QCOW2 disk. Update the operating system, install qemu-guest-agent, cloud-init, NVIDIA and Rivermax components, and the application dependencies. The procedure also covers the following:

    • Linux first-boot network initialization from Multus metadata

    • systemd service ordering

    • Application readiness

    • Image cleanup

    • Upload to a versioned PVC with virtctl

These procedures create and upload the source image. They do not create an application VM on the cluster. After completing either procedure, follow Deploy a Virtual Machine. The common deployment procedure creates a DataSource that references the uploaded PVC and a VM manifest that clones the DataSource into a dedicated writable root disk.