Configuring a virtual graphics card

Virtual graphics cards support remote access from workstations to guest applications that require user interaction through a graphical user interface.

About this task

Some workstation setups do not provide ready access to graphical applications on KVM guests on IBM Z®. Virtual graphics processing unit (GPU) devices act as virtual graphics cards that provide remote frame buffers for workstation clients. Workstation clients can use Virtual Network Computing (VNC) to access these frame buffers. Along with the GPU, you need to configure one or more input devices, like a keyboard or a mouse.

Procedure

  1. Use the graphics element as child of the devices element to configure a GPU device.
    graphics type attribute: vnc
    graphics autoport attribute: yes
    graphics port attribute: <port_number>
    Attributes autoport and port are mutually exclusive. Use autoport to automatically assign a free port number. Use port to explicitly assign a port number, for example, if you must adhere to a specific network topology.
  2. Optional: Use the listen element as child of the graphics element to specify where on the virtual server the GPU should listen to clients.
    listen type attribute: address
    listen address attribute: <IP_address>

    <IP_address> specifies the IP address or host name on the virtual server at which the GPU listens to clients. The specification 0.0.0.0 configures all of the virtual server's IP addresses. This is the default.

  3. Use the input element as child of the devices element to configure the workstation keyboard as an input device.
    input type attribute: keyboard
    input bus attribute: virtio
  4. Use the input element as child of the devices element to configure the workstation mouse as an input device.
    input type attribute: mouse
    input bus attribute: virtio

Example


<domain type="kvm">
   ...
   <devices>
      ...
      <graphics type="vnc" autoport="yes"
         <listen type="address" address="0.0.0.0"/>
      </graphics>
      <input type="keyboard" bus="virtio"/>
      <input type="mouse" bus="virtio"/>
      ...
   </devices>
   ...
</domain>