Web Console

!!! Note By deploying KubeVirt on top of OpenShift the user can benefit from the OpenShift web console functionality.

Managing Virtual Machines

Creating a Virtual Machine with the Interactive Wizard

The web console features an interactive wizard that guides you through Basic Settings, Networking, and Storage screens to simplify the process of creating virtual machines. All required fields are marked with a *. The wizard prevents you from moving to the next screen until the required fields have been completed.

NICs and storage disks can be created and attached to virtual machines after they have been created.

**Bootable Disk.**

If either URL or Container are selected as the Provision Source in the Basic Settings screen, a rootdisk disk is created and attached to the virtual machine as the Bootable Disk. You can modify the rootdisk but you cannot remove it.

A Bootable Disk is not required for virtual machines provisioned from a PXE source if there are no disks attached to the virtual machine. If one or more disks are attached to the virtual machine, you must select one as the Bootable Disk.

  1. Click Workloads > Virtual Machines from the side menu.

  2. Click Create Virtual Machine and select Create with Wizard.

  3. Fill in all required Basic Settings. Selecting a Template automatically fills in these fields.

  4. Click Next to progress to the Networking screen. A nic0 NIC is attached by default.

    1. (Optional) Click Create NIC to create additional NICs.

  5. Click Next to progress to the Storage screen.

    1. (Optional) Click Attach Disk to choose an available disk from the Select Storage drop-down list.

  6. Click Create Virtual Machine >. The Results screen displays the JSON configuration file for the virtual machine.

The virtual machine should now be listed in Workloads > Virtual Machines.

Creating a Virtual Machine Using a YAML Configuration File

A virtual machine can also be created by writing or pasting a YAML configuration file in the web console in the Workloads > Virtual Machines screen. A valid example virtual machine configuration is provided by default whenever you open the YAML edit screen.

If your YAML configuration is invalid when you click Create, an error message indicates the parameter in which the error occurs. Only one error is shown at a time.

Note: Navigating away from the YAML screen while editing cancels any changes to the configuration you have made.

  1. Click Workloads > Virtual Machines from the side menu.

  2. Click Create Virtual Machine and select Create from YAML.

  3. Write or paste your virtual machine configuration in the editable window.

    1. Alternatively, use the example virtual machine provided by

      default in the YAML screen.

  4. (Optional) Click Download to download the YAML configuration file to your local machine in its present state.

  5. Click Create to create the virtual machine.

The virtual machine should now be listed in Workloads > Virtual Machines.

Editing a Virtual Machine

You can edit some values of a virtual machine in the web console, either by editing the YAML directly, or from the Virtual Machine Overview screen.

When editing from the Virtual Machine Overview screen, the virtual machine must be Off.

  1. Click Workloads > Virtual Machines from the side menu.

  2. Select a Virtual Machine.

  3. Click Edit to make editable fields available.

  4. You can change the Flavor, but only to Custom, which provides additional fields for CPU and Memory.

  5. Click Save.

The updated values are shown after the operation is processed.

Editing the YAML of a Virtual Machine

You can edit the YAML configuration of a virtual machine directly within the web console.

Not all parameters can be updated. If you edit values that cannot be changed and click Save, an error message indicates the parameter that was not able to be updated.

The YAML configuration can be edited while the virtual machine is Running, however the changes will only take effect after the virtual machine has been restarted.

Note: Navigating away from the YAML screen while editing cancels any changes to the configuration you have made.

  1. Click Workloads > Virtual Machine from the side menu.

  2. Select a virtual machine.

  3. Click the YAML tab to display the editable configuration.

    1. (Optional) You can click Download to download the YAML file

      to your local machine in its current state.

  4. Edit the file and click Save.

A confirmation message shows that the modification has been successful, including the updated version number for the object.

Viewing the Events of a Virtual Machine

You can view the events stream for a running virtual machine from the Virtual Machine Details screen of the web console.

  1. Click Workloads > Virtual Machines from the side menu.

  2. Select a virtual machine.

  3. Click Events to view all events for the virtual machine.

Deleting a Virtual Machine

Deleting a virtual machine permanently removes it from the cluster.

  1. Click Workloads > Virtual Machines from the side menu.

  2. In the confirmation pop-up window, click Delete to permanently delete the virtual machine.

Controlling Virtual Machines

Starting a Virtual Machine

  1. Click Workloads > Virtual Machine from the side menu.

  2. In the confirmation pop-up window, click Start to start the virtual machine.

Stopping a Virtual Machine

  1. Click Workloads > Virtual Machine from the side menu.

  2. In the confirmation pop-up window, click Stop to stop the virtual machine.

Restarting a Virtual Machine

Important: Do not restart a virtual machine while it has a status of Importing. This will result in an error for the virtual machine and is a known issue.

  1. Click Workloads > Virtual Machine from the side menu.

  2. In the confirmation pop-up window, click Restart to restart the virtual machine.

Live Migrating a Virtual Machine

  1. Click Workloads > Virtual Machine from the side menu.

  2. In the confirmation pop-up window, click Migrate to migrate the virtual machine.

Cancelling a Virtual Machine Live Migration

  1. Click Workloads > Virtual Machine from the side menu.

  2. In the confirmation pop-up window, click Cancel Migration to cancel the virtual machine live migration.

Accessing Virtual Machine Consoles

Virtual Machine Console Sessions

You can connect to the VNC, Serial, and RDP consoles of a running virtual machine from the Consoles tab in the Virtual Machine Details screen of the web console.

There are three choices available: the graphical VNC Console, the Serial Console, and Desktop Viewer which can be used to connect to the RDP Console (Windows only). The VNC Console opens by default whenever you navigate to the Consoles tab. You can switch between the consoles using the VNC Console|Serial Console|Desktop Viewer drop-down list.

Console sessions remain active in the background unless they are disconnected. When the Disconnect before switching checkbox is active and you switch consoles, the current console session is disconnected and a new session with the selected console connects to the virtual machine. This ensures only one console session is open at a time.

Options for the VNC Console.

The Send Key button lists key combinations to send to the virtual machine.

Options for the Serial Console.

Use the Disconnect button to manually disconnect the Serial Console session from the virtual machine. Use the Reconnect button to manually open a Serial Console session to the virtual machine.

Options for the Desktop Viewer.

The Network Interface drop-down allows you to choose the network interface for the VM to which you want to connect.

Connecting to the Serial Console

Connect to the Serial Console of a running virtual machine from the Consoles tab in the Virtual Machine Details screen of the web console.

  1. Click Workloads > Virtual Machines from the side menu.

  2. Select a virtual machine.

  3. Click Consoles. The VNC console opens by default.

  4. Click the VNC Console drop-down list and select Serial Console.

Connecting to the VNC Console

Connect to the VNC console of a running virtual machine from the Consoles tab in the Virtual Machine Details screen of the web console.

  1. Click Workloads > Virtual Machines from the side menu.

  2. Select a virtual machine.

  3. Click Consoles. The VNC console opens by default.

Using Desktop Viewer to connect to RDP Console (Windows only)

The Desktop Viewer option can be used to connect to the RDP console of a running Windows virtual machine.

  1. Click Workloads > Virtual Machines from the side menu.

  2. Select a virtual machine.

  3. Click Consoles. The VNC console opens by default.

  4. Select Desktop Viewer in the drop-down list.

  5. Choose the network interface you want to connect to from the Network Interface drop-down.

    1. If the L2 network interface is chosen, you will need to install qemu-guest-agent on the VM.

    2. If the pod network interface is chosen, you will need to create a service to expose port 3389 (RDP) on the VM. Follow the on-screen instructions to do so.

  6. Click Launch Remote Desktop to download the RDP file, which can then be opened in the RDP client of your choice.

Managing Virtual Machine NICs

Creating a NIC for a Virtual Machine

Create and attach additional NICs to a virtual machine from the web console.

  1. Click Workloads > Virtual Machines from the side menu.

  2. Select a virtual machine.

  3. Click Network Interfaces to display the NICs already attached to the virtual machine.

  4. Click Create NIC to create a new slot in the list.

  5. Fill in the NAME, NETWORK, MAC ADDRESS, and BINDING METHOD details for the new NIC.

Deleting a NIC from a Virtual Machine

Deleting a NIC from a virtual machine detaches and permanently deletes the NIC.

  1. Click Workloads > Virtual Machines from the side menu.

  2. Select a virtual machine.

  3. Click Network Interfaces to display the NICs already attached to the virtual machine.

  4. In the confirmation pop-up window, click Delete to detach and delete the NIC.

Managing Virtual Machine Disks

Creating a Disk for a Virtual Machine

Create and attach additional storage disks to a virtual machine from the web console.

  1. Click Workloads > Virtual Machines from the side menu.

  2. Select a virtual machine.

  3. Click Disks to display the disks already attached to the virtual machine.

  4. Click Create Disk to create a new slot in the list.

  5. Fill in the NAME, SIZE, and optional STORAGE CLASS details for the new disk.

Deleting a Disk from a Virtual Machine

Deleting a disk from a virtual machine detaches and permanently deletes the disk.

  1. Click Workloads > Virtual Machines from the side menu.

  2. Select a virtual machine.

  3. Click Disks to display the disks already attached to the virtual machine.

  4. Click Confirm to detach and delete the disk.

Virtual Machine Templates in the Web Console

Creating a Virtual Machine Template with the Interactive Wizard

Virtual machine templates are an easy way to create multiple virtual machines with similar configuration. After a template is created, reference the template when creating virtual machines.

The web console features an interactive wizard that guides you through Basic Settings, Networking, and Storage screens to simplify the process of creating virtual machine templates. All required fields are marked with a *. The wizard prevents you from moving to the next screen until the required fields have been completed.

NICs and storage disks can be created and attached to virtual machines after they have been created.

**Bootable Disk.**

If either URL or Container are selected as the Provision Source in the Basic Settings screen, a rootdisk disk is created and attached to virtual machines as the Bootable Disk. You can modify the rootdisk but you cannot remove it.

A Bootable Disk is not required for virtual machines provisioned from a PXE source if there are no disks attached to the virtual machine. If one or more disks are attached to the virtual machine, you must select one as the Bootable Disk.

  1. Click Workloads > Virtual Machine Templates from the side menu.

  2. Click Create Template and select Create with Wizard.

  3. Fill in all required Basic Settings.

  4. Click Next to progress to the Networking screen. An nic0 NIC is attached by default.

    1. (Optional) Click Create NIC to create additional NICs.

  5. Click Next to progress to the Storage screen.

    1. (Optional) Click Attach Disk to choose an available disk from the Select Storage drop-down list.

  6. Click Create Virtual Machine Template >. The Results screen displays the JSON configuration file for the virtual machine template.

The template should now be listed in Workloads > Virtual Machine Templates.

Editing the YAML of a Virtual Machine Template

You can edit the YAML configuration of a virtual machine template directly within the web console.

Not all parameters can be updated. If you edit values that cannot be changed and click Save, an error message shows, indicating the parameter that was not able to be updated.

Note: Navigating away from the YAML screen while editing cancels any changes to the configuration you have made.

  1. Click Workloads > Virtual Machine Template from the side menu.

  2. Select a template.

  3. Click the YAML tab to display the editable configuration.

    1. (Optional) You can click Download to download the YAML file

      to your local machine in its current state.

  4. Edit the file and click Save.

A confirmation message shows the modification has been successful, including the updated version number for the object.

Deleting a Virtual Machine Template

Deleting a virtual machine template permanently removes it from the cluster.

  1. Click Workloads > Virtual Machine Templates from the side menu.

  2. In the confirmation pop-up window, click Delete to permanently delete the template.

Reference

Virtual Machine Wizard Fields

Virtual Machine Template Wizard Fields

Cloud-init Fields

Networking Fields

Storage Fields

Virtual Machine Actions

PXE Booting with a Specified MAC Address

Network booting allows a computer to boot and load an operating system or other program without requiring a locally attached storage device. For example, you can use it to choose your desired OS image from a PXE server when deploying a new host.

  1. Configure a PXE network on the cluster:

    1. Create NetworkAttachmentDefinition of PXE network pxe-net-conf:

      apiVersion: "k8s.cni.cncf.io/v1"
      kind: NetworkAttachmentDefinition
      metadata:
        name: pxe-net-conf
      spec:
        config: '{
            "cniVersion": "0.3.1",
            "type": "ovs",
            "bridge": "br1"
          }'

      Note: In this example, the virtual machine instance (VMI) will be attached through a trunk port to the Open vSwitch bridge <br1>.

    2. Create Open vSwitch bridge <br1> and connect it to interface <eth1>, which is connected to a network that allows for PXE booting:

      $ ovs-vsctl add-br br1
      $ ovs-vsctl add-port br1 eth1
      $ ovs-vsctl show
      8d004495-ea9a-44e1-b00c-3b65648dae5f
          Bridge br1
              Port br1
                  Interface br1
                      type: internal
              Port "eth1"
                  Interface "eth1"
          ovs_version: "2.8.1"

      Note: This bridge must be configured on all nodes. If it is only available on a subset of nodes, make sure that VMIs have nodeSelector constraints in place.

  2. Edit the virtual machine instance configuration file to include the details of the interface and network.

    1. Specify the network and MAC address if required by the PXE server. A value is assigned automatically if the MAC address is not specified; however, note that at this time, MAC addresses that are assigned automatically are not persistent.

      Ensure that bootOrder is set to 1 so that the interface boots first. In this example, the interface is connected to a network called <pxe-net>:

      interfaces:
      - masquerade: {}
        name: default
      - bridge: {}
        name: pxe-net
        macAddress: de:00:00:00:00:de
        bootOrder: 1

      Note: Boot order is global for interfaces and disks.

    2. Assign a boot device number to the disk to ensure proper booting after OS provisioning.

      Set the disk bootOrder value to 2:

      devices:
        disks:
        - disk:
            bus: virtio
          name: containerdisk
          bootOrder: 2
    3. Specify that the network is connected to the previously created NetworkAttachmentDefinition. In this scenario, <pxe-net> is connected to the NetworkAttachmentDefinition called <pxe-net-conf>:

      networks:
      - name: default
        pod: {}
      - name: pxe-net
        multus:
          networkName: pxe-net-conf
  3. Create the virtual machine instance:

    $ oc create -f vmi-pxe-boot.yaml
    virtualmachineinstance.kubevirt.io "vmi-pxe-boot" created
  4. Wait for the virtual machine instance to run:

    $ oc get vmi vmi-pxe-boot -o yaml | grep -i phase
      phase: Running
  5. View the virtual machine instance using VNC:

    $ virtctl vnc vmi-pxe-boot
  6. Watch the boot screen to verify that the PXE boot is successful.

  7. Log in to the VMI:

    $ virtctl console vmi-pxe-boot
  8. Verify the interfaces and MAC address on the VM, and that the interface connected to the bridge has the specified MAC address. In this case, we used eth1 for the PXE boot, without an IP address. The other

    $ ip addr
    ...
    3. eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
       link/ether de:00:00:00:00:de brd ff:ff:ff:ff:ff:ff

Last updated