Module 1: Exploring the environment

Modernizing virtualization starts with understanding the platform. Before you can migrate workloads or build new VMs, you need to know what tools are available, how they fit together, and how storage integrates with compute.

In this module, you will explore the OpenShift Virtualization environment, understand the IBM Fusion storage integration, and create your first virtual machine.

Learning objectives

By the end of this module, you will be able to:

  • Navigate the OpenShift Virtualization console and identify key components

  • Understand how IBM Fusion provides persistent storage for VM workloads

  • Create a virtual machine from a pre-configured template

  • Verify VM status and access the VM console

Exercise 1: Navigating the OpenShift console

In this exercise, you will log in to the OpenShift web console and explore the Virtualization section to understand the management interface.

  1. Open a web browser and navigate to the OpenShift console:

    {openshift_cluster_console_url}

  2. Log in with the following credentials:

    • Username: {openshift_cluster_admin_username}

    • Password: {openshift_cluster_admin_password}

  3. After logging in, verify you are in the Administrator perspective by checking the dropdown in the upper-left corner of the console. If it shows Developer, switch it to Administrator.

  4. In the left navigation menu, click on Virtualization. This opens the OpenShift Virtualization dashboard.

  5. Explore the Virtualization overview page. You should see:

    • Overview tab showing the virtualization cluster status

    • Catalog for creating new VMs from templates

    • VirtualMachines listing any existing VMs

    • Templates showing available VM templates

    • InstanceTypes showing available VM instance types available

    • Bootable volumes showing available boot images available

    • MigrationPolicies to manage VM migration policies

    • Checkups to manage and run network and storage checkup tools

OpenShift Virtualization overview dashboard showing status and navigation tabs
Figure 1. OpenShift Virtualization Overview

Verify

Using the Bastion tab at the top of your browser window as illustrated below.

Showromm Bastion tab for Command Line Access
Figure 2. Bastion Tab Access

Confirm that the OpenShift Virtualization operator is installed and healthy:

If the bastion tab is not responsive, click the refresh arrow for the tab to restart the corresponding container as illustrated below.
Refresh Bastion Tab if Stale and not Responsive
Figure 3. Bastion Tab Refresh
oc get csv -n openshift-cnv

Expected output:

NAME                                       DISPLAY                    VERSION   REPLACES                                   PHASE
kubevirt-hyperconverged-operator.v4.20.8   OpenShift Virtualization   4.20.8    kubevirt-hyperconverged-operator.v4.20.7   Succeeded

Check that the HyperConverged custom resource is available:

oc get hyperconverged -n openshift-cnv

Expected output:

NAME                 AGE
kubevirt-hyperconverged   <age>
  • HyperConverged CR status shows as available

  • OpenShift Virtualization CSV phase is "Succeeded"

Exercise 2: Exploring IBM Fusion storage integration

IBM Fusion provides enterprise-grade storage for your OpenShift cluster. In this exercise, you will examine the storage classes available and understand how they support VM workloads.

  1. In the OpenShift console, navigate to Storage > StorageClasses in the left navigation menu.

  2. Identify the storage classes provided by IBM Fusion. Look for storage classes with openshift-storage in the provisioner name.

    IBM Fusion storage classes provide features critical for VM workloads, including ReadWriteMany access modes, snapshots, and cloning.
    IBM Fusion Storage Classes
    Figure 4. Overview of IBM Fusion Storage Classes
  3. In the OpenShift console, navigate to Storage > Data Foundation in the left navigation menu.

    IBM Fusion Integration with Red Hat OpenShift Console
    Figure 5. Overview of IBM Fusion Data Foundation
  4. In the OpenShift console, navigate to Storage > Storage Cluster in the left navigation menu.

    IBM Fusion Storage Cluster Overview
    Figure 6. Overview of IBM Fusion Storage Cluster
    Once in the Storage Cluster overview you can look at the specific storage type provided by clicking the specific types of storage as highlighted with a number 2.
    • Block and File storage

    • Object storage

    • Storage pools

    • Topology of the storage cluster

  5. From the command line, list all available storage classes:

    oc get storageclass

    Expected output:

    NAME                                         PROVISIONER                             RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
    gp2-csi                                      ebs.csi.aws.com                         Delete          WaitForFirstConsumer   true                   <age>
    gp3-csi                                      ebs.csi.aws.com                         Delete          WaitForFirstConsumer   true                   <age>
    ocs-storagecluster-ceph-rbd (default)        openshift-storage.rbd.csi.ceph.com      Delete          Immediate              true                   <age>
    ocs-storagecluster-ceph-rbd-virtualization   openshift-storage.rbd.csi.ceph.com      Delete          Immediate              true                   <age>
    ocs-storagecluster-cephfs                    openshift-storage.cephfs.csi.ceph.com   Delete          Immediate              true                   <age>
    openshift-storage.noobaa.io                  openshift-storage.noobaa.io/obc         Delete          Immediate              false                  <age>
  6. Examine the details of an IBM Fusion storage class:

    oc get storageclass ocs-storagecluster-ceph-rbd -o yaml

    Expected output:

    allowVolumeExpansion: true
    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      annotations:
        description: Provides RWO Filesystem volumes, and RWO and RWX Block volumes
        reclaimspace.csiaddons.openshift.io/schedule: '@weekly'
        storageclass.kubernetes.io/is-default-class: "true"
      creationTimestamp: "2026-03-20T10:12:00Z"
      labels:
        ramendr.openshift.io/storageid: bb43b63b5fa8538c26acca2ba21d1c56
      name: ocs-storagecluster-ceph-rbd
      ownerReferences:
      - apiVersion: ocs.openshift.io/v1alpha1
        blockOwnerDeletion: true
        controller: true
        kind: StorageClient
        name: ocs-storagecluster
        uid: dd0c97e4-65dc-425d-8a82-9f329abd827d
      resourceVersion: "58670"
      uid: 913f7e1f-57d5-49ee-b672-e1ddcd2916f5
    parameters:
      clusterID: openshift-storage
      csi.storage.k8s.io/controller-expand-secret-name: rook-csi-rbd-provisioner
      csi.storage.k8s.io/controller-expand-secret-namespace: openshift-storage
      csi.storage.k8s.io/fstype: ext4
      csi.storage.k8s.io/node-stage-secret-name: rook-csi-rbd-node
      csi.storage.k8s.io/node-stage-secret-namespace: openshift-storage
      csi.storage.k8s.io/provisioner-secret-name: rook-csi-rbd-provisioner
      csi.storage.k8s.io/provisioner-secret-namespace: openshift-storage
      imageFeatures: layering,deep-flatten,exclusive-lock,object-map,fast-diff
      imageFormat: "2"
      pool: ocs-storagecluster-cephblockpool
    provisioner: openshift-storage.rbd.csi.ceph.com
    reclaimPolicy: Delete
    volumeBindingMode: Immediate
  7. Check what persistent volumes are currently provisioned:

    oc get pv -o custom-columns="NAME:.metadata.name,SIZE:.spec.capacity.storage,ACCESS MODES:.spec.accessModes[0],STORAGE CLASS:.spec.storageClassName,CLAIM:.spec.claimRef.name"

    Expected output:

    NAME                                       SIZE    ACCESS MODES       STORAGE CLASS                 CLAIM
    pvc-011ff938-bc87-4de8-86fe-f874f644aaa1   512Gi   ReadWriteOnce      gp3-csi                       fusion-storage-0-data-0sj2bk
    pvc-1340e310-163d-42ed-9629-b7a89e6c8477   5Gi     ReadWriteOnce      ocs-storagecluster-ceph-rbd   showroom-terminal-lab-user-home
    pvc-1e9cdc8c-9fd3-4751-8c0e-a267fac1e1f4   50Gi    ReadWriteOnce      gp3-csi                       rook-ceph-mon-b
    pvc-4a93e2b0-f504-425f-9dc9-7bedacf75c55   512Gi   ReadWriteOnce      gp3-csi                       fusion-storage-2-data-0wbmsk
    pvc-5e3de127-e914-4b62-a79a-e2a64a33a845   50Gi    ReadWriteOncePod   ocs-storagecluster-ceph-rbd   noobaa-db-pg-cluster-2
    pvc-77e5bcc2-fc07-462f-82fd-05c5eda806f6   50Gi    ReadWriteOnce      ocs-storagecluster-ceph-rbd   keycloak-pgsql-data
    pvc-aa542b60-4433-4c4f-aa4d-b51e03681dcb   50Gi    ReadWriteOnce      gp3-csi                       rook-ceph-mon-a
    pvc-b42c704e-6a58-4823-be5f-f67632e8aef1   50Gi    ReadWriteOncePod   ocs-storagecluster-ceph-rbd   noobaa-db-pg-cluster-1
    pvc-d80f96ec-28e8-4beb-825c-0a34d2858ce5   50Gi    ReadWriteOnce      gp3-csi                       rook-ceph-mon-c
    pvc-f6e7aa59-7ded-4125-9d60-4c2b6bb2fda9   512Gi   ReadWriteOnce      gp3-csi                       fusion-storage-1-data-0z29zj
    Have a look specifically at the one for the IBM Fusion storage class named ocs-storagecluster-ceph-rbd

Verify

  1. Verify that volume snapshot classes are available for VM snapshots:

    oc get volumesnapshotclass

    Expected output:

    NAME                                        DRIVER                                  DELETIONPOLICY   AGE
    csi-aws-vsc                                 ebs.csi.aws.com                         Delete           <age>
    ocs-storagecluster-cephfsplugin-snapclass   openshift-storage.cephfs.csi.ceph.com   Delete           <age>
    ocs-storagecluster-rbdplugin-snapclass      openshift-storage.rbd.csi.ceph.com      Delete           <age>
  2. Verify that IBM Fusion storage is operational:

    oc get storagecluster -n openshift-storage

    Expected output:

    NAME                 AGE   PHASE   EXTERNAL   CREATED AT             VERSION
    ocs-storagecluster   <age> Ready              <  Date and Time >     4.20.7

Expected output from the two commands above show.

  • Two volumesnapshotclass are available in your cluster for openshift-storage drivers

  • The IBM Fusion Data Foundation cluster shows PHASE as Ready

Exercise 3: Explore IBM Fusion Backup and Restore Service

Along with IBM Fusion enterprise-grade storage for your OpenShift cluster, it also provides backup and restore services for your virtual machines and applications. In this exercise, you will examine the backup and restore service and its configuration.

  1. Open the IBM Fusion UI using the application selector at the top of the Red Hat OpenShift Web Console as illustrated below.

    Open the IBM Fusion UI Web Console
    Figure 7. IBM Fusion Web Console Launch
You can also use the Showroom Fusion tab to get access to the IBM Fusion UI as illustrated below.
Open the IBM Fusion UI Using Shopwroom Tab
Figure 8. Switch to IBM Fusion Showroom Tab
  1. Once in the IBM Fusion Web Console click on the Services menu on the left hand side pane as illustrated below.

    Verify the IBM Fusion Servicdes deployed
    Figure 9. IBM Fusion Web Console Service Tab
  2. Click the Backup & Restore tile to open the install window for the IBM Fusion Backup & Restore service as illustrated below.

    Open Backup & Restore Install
    Figure 10. IBM Fusion Backup & Restore Service Tile
  3. Click the Install button to start the installation process for the service as illustrated below.

    Start Backup & Restore Install
    Figure 11. IBM Fusion Backup & Restore Installation
  4. In the drop-down list associated with the Storage class to be used to deploy the service field select the value ocs-storagecluster-ceph-rbd as illustrated below.

    Select the Storage Class for the Backup & Restore Install
    Figure 12. Select IBM Fusion Backup & Restore Service StorageClass
  5. Initiate the deployment of the service by clicking the Install button as illustrated below.

    Start the Deployment of the Backup & Restore Service
    Figure 13. Initiate the Deployment of IBM Fusion Backup & Restore
  6. The IBM Fusion Backup & Restore Service is now being installed as illustrated below.

    Deployment of the Backup & Restore Service started
    Figure 14. IBM Fusion Backup & Restore is being installed

Verify

Confirm that the IBM Fusion Backup & Restore service installation has started:

  • The service tile in the IBM Fusion Services tab shows the Backup & Restore service status as installing or installed

  • The installation progress is visible in the IBM Fusion UI

This completes this part of the lab. The IBM Fusion Backup & Restore functionality will be configured and used in the optional Module 4.

Exercise 4: Creating your first virtual machine

Now that you understand the environment, it is time to create your first virtual machine using the OpenShift Virtualization console.

  1. In the OpenShift console, navigate to Virtualization > Catalog. Select Red Hat Enterprise Linux 9 VM as illustrated below.

    Create virtual machine
    Figure 15. Red Hat OpenShift Virtualization Catalog
    The catalog can be customized post Red Hat OpenShift Virtualization deployment. Visit the Templates tab for existing predefined templates.
  2. Scroll down and set the following numbered settings:

    • CPU and Memory: Review the default allocation (typically 1 CPU, 2 GiB memory) (item 1)

    • Name: Enter a descriptive name (item 2), for example rhel9-test-vm as illustrated

    • Storage: Choose the storage class (item 3) for the boot disk (ocs-storagecluster-ceph-rbd-virtualization). This is an IBM Fusion storage class

      Customize VM parameters
      Figure 16. Customize VM
      To create your VM in a different namespace simply select the correct one using the namespace selector in the Red Hat OpenShift console
      Use the checkbox just above the Create Virtual Machine button if you do not wish to start the VM automatically.
  3. Click Create VirtualMachine to start the VM creation process.

  4. Wait for the VM status to change from Starting to Running as illustrated below (Item 1). This may take a few minutes as the boot source is provisioned.

    VM is in Running state
    Figure 17. Running VM
  5. Once the VM is running, click the Console tab to access the VM console directly from the browser.

VM Console Tab Access
Figure 18. Accessing the VM Console

Verify

Switch to the Bastion tab in your Web browser. Confirm your VM is running from the command line:

oc get vmi -A

Expected output:

NAMESPACE   NAME            AGE   PHASE     IP             NODENAME                                  READY
default     rhel9-test-vm   <age> Running   10.x.x.x       ip-<AWS_IP>.us-east-2.compute.internal    True

Check the VM details:

oc describe vm rhel9-test-vm -n default

Verify the persistent volume claim was created with IBM Fusion storage class ocs-storagecluster-ceph-rbd-virtualization:

oc get pvc -n default

Expected output:

NAME                   STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS                                 VOLUMEATTRIBUTESCLASS   AGE
rhel9-test-vm-volume   Bound    pvc-<UUID>                                 30Gi       RWX            ocs-storagecluster-ceph-rbd-virtualization   <unset>                 <age>
  • VM status shows Running

  • A persistent volume claim exists for the VM boot disk

  • The PVC uses an IBM Fusion storage class

Learning outcomes

By completing this module, you should now understand:

  • How to navigate the OpenShift Virtualization interface and identify operator status

  • How IBM Fusion storage classes integrate with OpenShift to provide persistent storage for VMs

  • How to create a virtual machine from a template using the OpenShift console

  • How to verify VM status using both the console and the command line

Module summary

You have successfully explored the OpenShift Virtualization environment and created your first VM.

What you accomplished:

  • Navigated the OpenShift Virtualization dashboard and identified key components

  • Examined IBM Fusion storage classes and verified storage integration

  • Created a RHEL 9 virtual machine from a template

  • Verified VM and storage status using both the console and CLI

Key takeaways:

  • OpenShift Virtualization runs VMs as native Kubernetes resources alongside containers

  • IBM Fusion provides enterprise storage features including snapshots and ReadWriteMany access

  • VM creation follows familiar patterns, whether using templates or custom specifications

  • Both the web console and CLI are available for VM management and troubleshooting

Next steps:

Module 2 will cover VM lifecycle management, including CPU and memory configuration, live migration, snapshots, and cloning using IBM Fusion storage.

Assets needed

  1. content/modules/ROOT/assets/images/03-module-01-console-virtualization-overview.png - Screenshot of the OpenShift Virtualization overview dashboard

  2. content/modules/ROOT/assets/images/03-module-01-switch-to-bastion-tab.png - Switching to the Bastion tab

  3. content/modules/ROOT/assets/images/03-module-01-refresh-bastion-tab.png - Refreshing the Bastion tab

  4. content/modules/ROOT/assets/images/03-module-01-console-storageclasses.png - IBM Fusion Storage classes

  5. content/modules/ROOT/assets/images/03-module-01-console-datafoundation-overview.png - IBM Fusion Data Foundation Overview

  6. content/modules/ROOT/assets/images/03-module-01-console-datafoundation-storagecluster.png - IBM Fusion storage cluster details

  7. content/modules/ROOT/assets/images/03-module-01-FusionUI-Selector.png - Accessing IBM Fusion web console from OpenShift console

  8. content/modules/ROOT/assets/images/03-module-01-FusionUI-FromShowroomTab.png - Accessing IBM Fusion web console from showroom tab

  9. content/modules/ROOT/assets/images/03-module-01-FusionUI-ServiceTab.png - IBM Fusion Services tab

  10. content/modules/ROOT/assets/images/03-module-01-FusionUI-BnR-NewInstall-1.png - IBM Fusion Backup and Restore Install Step 1

  11. content/modules/ROOT/assets/images/03-module-01-FusionUI-BnR-NewInstall-2.png - IBM Fusion Backup and Restore Install Step 2

  12. content/modules/ROOT/assets/images/03-module-01-FusionUI-BnR-NewInstall-3.png - IBM Fusion Backup and Restore Install Step 3

  13. content/modules/ROOT/assets/images/03-module-01-FusionUI-BnR-NewInstall-4.png - IBM Fusion Backup and Restore Install Step 4

  14. content/modules/ROOT/assets/images/03-module-01-FusionUI-BnR-NewInstall-5.png - IBM Fusion Backup and Restore Install Step 5

  15. content/modules/ROOT/assets/images/03-module-01-console-virtualization-createvm-1b.png - Create virtual machine from VM catalog

  16. content/modules/ROOT/assets/images/03-module-01-console-virtualization-createvm-2b.png - Customize virtual machine

  17. content/modules/ROOT/assets/images/03-module-01-console-virtualization-createvm-3b.png - Wait for vm to enter Running state

  18. content/modules/ROOT/assets/images/03-module-01-console-virtualization-createvm-4b.png - Access VM console