Tuesday, January 24, 2017

QEMU v2.8 & libvirt v3.0 released

QEMU v2.8 and libvirt v3.0 (available for download at the libvirt project website) are out! The highlight from a KVM on z perspective is the introduction of CPU models.
The CPU models are of primary use in live migration scenarios. For example, in a setup with different z Systems machine generations, it is now possible to check up-front whether the target host will support all facilities required by a guest for a successful migration. In case any of the required facilities are missing, the migration is aborted, and the guest will continue to run on the current host.
Furthermore, a guest can be defined with a backlevel CPU model compatible with the target machine (of a previous z Systems generation), so that migrations become possible.

To see what CPU models QEMU (and hence the host) supports, use virsh domcapabilities:

  $ virsh domcapabilities
    [...]

    <cpu>
      <mode name='custom' supported='yes'>
        <model usable='unknown'>z10EC-base</model>
        <model usable='unknown'>z9EC-base</model>
        <model usable='unknown'>z196.2-base</model>
        <model usable='unknown'>z900-base</model>
        <model usable='unknown'>z990</model>
        <model usable='unknown'>z900.2-base</model>
        <model usable='unknown'>host</model>
        <model usable='unknown'>z900.3</model>
        <model usable='unknown'>z114</model>
        <model usable='unknown'>z890-base</model>
        <model usable='unknown'>z13.2-base</model>
        <model usable='unknown'>zEC12.2</model>
        [...]