Feature #4123

Add image capability to Libvirt/KVM provider

Added by Romain Vrignaud over 4 years ago. Updated over 4 years ago.

Assigned To:Dominic Cleal
Category:Compute resources
Target version:Sprint 21
Difficulty: Bugzilla link:
Found in release: Pull request:
Story points-
Velocity based estimate-
Release1.5.0Release relationshipAuto


I think that being able to provision a new VM without waiting for
kickstart / preseed installation time is awesome.

We should add the ability to clone a "base image" and use it
as a root system for new vms.

Associated revisions

Revision 3d03e334
Added by Dominic Cleal over 4 years ago

fixes #4123 - libvirt imaging support using backing volumes


#1 Updated by Dominic Cleal over 4 years ago

  • Status changed from New to Assigned
  • Assigned To set to Dominic Cleal

I've got a working branch here: https://github.com/domcleal/foreman/tree/4123-libvirt-imaging

Waiting on fog 1.20 (to be released this week) which contains an enabling feature for backing volume support.

The feature works by registering an image to the libvirt compute resource, where the "ID" is the full path to a backing volume on the filesystem (e.g. /var/lib/libvirt/images/centos64.qcow2). Foreman then creates the new host's volume referencing this original qcow2 as a backing volume, so you get a copy on write setup. Since libvirt doesn't provide user data or ways to get SSH keys in, it also relies on a username/password embedded in the image in the same way as the (about to be merged) oVirt imaging support.

We might later be able to add user data support by using a separate disk for cloud-init to read (see Rich Jones' blog).

#2 Updated by Dominic Cleal over 4 years ago

  • Status changed from Assigned to Ready For Testing
  • Target version set to Sprint 20

#3 Updated by Dmitri Dolguikh over 4 years ago

  • Target version changed from Sprint 20 to Sprint 21

#4 Updated by Dominic Cleal over 4 years ago

  • Release set to 1.5.0

#5 Updated by Dominic Cleal over 4 years ago

  • Status changed from Ready For Testing to Closed
  • % Done changed from 0 to 100

Also available in: Atom PDF