Inserting CD-ROMs in live virtual machines
To attach a storage device to a virtual machine (VM) without rebooting the VM, you can configure a VM to use a virtual CD-ROM drive, and insert an ISO image in the drive.
This also makes it possible to install an operating system from a CD-ROM in the VM.
Important
Inserting and ejecting CD-ROMs in running VMs is a Technology Preview feature only. Technology Preview features are not supported with Red Hat production service level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process.
For more information about the support scope of Red Hat Technology Preview features, see Technology Preview Features Support Scope.
Inserting a CD-ROM in a live VM by using the command line
To make data on a CD-ROM storage device available to a running virtual machine (VM), create a virtual CD-ROM drive in the VM and insert the CD-ROM into the drive as an ISO image.
Setting up a virtual CD-ROM drive requires rebooting the VM, but afterwards, you can insert and eject ISO images in the drive while the VM is running.
Important
Inserting and ejecting CD-ROMs in running VMs is a Technology Preview feature only. Technology Preview features are not supported with Red Hat production service level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process.
For more information about the support scope of Red Hat Technology Preview features, see Technology Preview Features Support Scope.
-
The
DeclarativeHotplugVolumesfeature gate must be enabled. To ensure this, theHyperConvergedCR must contain thedeclarativeHotplugVolumes: trueline in thespec.featureGatesconfiguration section:apiVersion: hco.kubevirt.io/v1 kind: HyperConverged metadata: name: kubevirt-hyperconverged namespace: openshift-cnv spec: featureGates: declarativeHotplugVolumes: true -
The
HotplugVolumesfeature gate must be disabled. This feature gate is required for using ephemeral volumes, but is incompatible withDeclarativeHotplugVolumes.apiVersion: hco.kubevirt.io/v1 kind: HyperConverged metadata: name: kubevirt-hyperconverged namespace: openshift-cnv spec: featureGates: HotplugVolumes: false -
You have an ISO image of a CD-ROM available in the cluster.
-
Run the following command to edit the configuration of the VM in which you want to insert the CD-ROM:
$ oc edit vm <vm-name> -n <namespace>where:
-
<vm-name>is the name of the VM -
<namespace>is the name of the project name space that contains the VM
-
-
Add a
cdromdisk to thespec.template.spec.domains.devices.diskssection of the VM configuration. For example:apiVersion: kubevirt.io/v1 kind: VirtualMachine metadata: name: example-vm spec: runStrategy: Always template: spec: domain: devices: disks: - cdrom: bus: sata name: cdrom -
If the VM is running, shut it down.
-
Insert a CD-ROM volume in the
spec.template.spec.volumessection of the VM configuration. For example:apiVersion: kubevirt.io/v1 kind: VirtualMachine metadata: name: example-vm spec: template: spec: volumes: - dataVolume: name: cdrom-example hotpluggable: true name: cdromYou can insert a CD-ROM this way while the VM is running, but the dataVolume must have the
hotpluggable: trueparameter set. -
Optional: In the guest operating system, verify that the CD-ROM has been detected.
-
Optional: Eject the CD-ROM volume. To do so, remove the
cdromvolume from thespec.template.spec.volumessection of the VM configuration. You can do this while the VM is running.
Inserting a CD-ROM in a live VM by using the web console
To make data on a CD-ROM storage device available to a running virtual machine (VM), create a virtual CD-ROM drive in the VM and insert the CD-ROM into the drive as an ISO image.
Setting up a virtual CD-ROM drive requires rebooting the VM, but you can insert and eject ISO images in the drive while the VM is running.
Important
Inserting and ejecting CD-ROMs in running VMs is a Technology Preview feature only. Technology Preview features are not supported with Red Hat production service level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process.
For more information about the support scope of Red Hat Technology Preview features, see Technology Preview Features Support Scope.
-
The
DeclarativeHotplugVolumesfeature gate must be enabled. To ensure this, theHyperConvergedCR must contain thedeclarativeHotplugVolumes: trueline in thespec.featureGatesconfiguration section:apiVersion: hco.kubevirt.io/v1 kind: HyperConverged metadata: name: kubevirt-hyperconverged namespace: openshift-cnv spec: featureGates: declarativeHotplugVolumes: true -
The
HotplugVolumesfeature gate must be disabled. This feature gate is required for using ephemeral volumes, but is incompatible withDeclarativeHotplugVolumes.apiVersion: hco.kubevirt.io/v1 kind: HyperConverged metadata: name: kubevirt-hyperconverged namespace: openshift-cnv spec: featureGates: HotplugVolumes: false
-
In the OpenShift Container Platform web console, go to Virtualization → VirtualMachines.
-
Click the name of the VM in which you want to insert the CD-ROM.
-
On the VM details page, click the Configuration tab.
-
Open the Storage pane.
-
Click Add.
A drop-down menu opens.
-
Click CD-ROM.
-
In the Name field, add a name for the CD-ROM drive device.
-
Select the ISO image to add to the drive as a CD-ROM volume. To do so, click the drop-down button, and select from the volumes available in the cluster.
Alternatively, you can upload a new ISO file and insert it into the CD-ROM drive after it is created. To do so:
-
Ensure that the Upload a new ISO file to the cluster line is checked.
-
Drag and drop an ISO file in the Upload ISO field, or click Upload and select the ISO image that you want to upload.
-
In the Upload mode field, select Mount uploaded ISO as DataVolume.
-
-
Click Add.
The CD-ROM drive is added to the Storage list.
-
If the VM is running, shut it down or restart it.
-
To insert the ISO file attached to the CD-ROM drive as a CD-ROM volume into the VM, click the Options menu
next to the CD-ROM drive, and click Inject. You can do this while the VM is running.
-
Optional: In the guest operating system, verify that the CD-ROM has been detected.
-
Optional: To eject the CD-ROM from the VM, click the Options menu
next to the CD-ROM device in the web console, and select Eject. You can do this while the VM is running.