Statistics
| Branch: | Tag: | Revision:

root / lib / hypervisor @ 69ab2e12

# Date Author Comment
69ab2e12 10/20/2011 03:04 pm Guido Trotter

Add hypervisors ancillary files list

These lists will be used to declare some of the files not necessarily
needed on all nodes. The files selected are files without which the
various hypervisors can still work, but that when they are present
should be synchronized across the cluster (or node group)....

22d568c2 10/20/2011 03:04 pm Guido Trotter

xen: abstract a few hardcoded strings as constants

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

0aee8ee9 10/18/2011 05:21 pm Guido Trotter

Revert "Implementation of TLS-protected SPICE connections"

This reverts commit b6267745ede04b3c943bc02e004bdb9347e0f564.
This commit will be readded on master.

Signed-off-by: Guido Trotter <>
Reviewed-by: Michael Hanselmann <>

9849cec7 10/18/2011 05:21 pm Guido Trotter

Revert "Added SPICE TLS option and related cert paths"

This reverts commit bfe86c763a9ff1b481d799537ff0f0cf6740dfd1.
This commit will be readded on master.

Signed-off-by: Guido Trotter <>
Reviewed-by: Michael Hanselmann <>

53328375 10/18/2011 05:21 pm Guido Trotter

Revert "Add tls_ciphers and use_vdagent options"

This reverts commit 3e40b5879fa0070d6dd0e689dcfc31f20198a5a8.
This commit will be readded on master.

Signed-off-by: Guido Trotter <>
Reviewed-by: Michael Hanselmann <>

6555373d 10/17/2011 06:39 pm Guido Trotter

xen: changes to facilitate "xl" support (xen 4.1)

- Copy the xl config file, in case there's any
- Start instances by config file, not name (also xm compatible)
- Start paused domains with p and not --paused (also xm compatible)
Add a fixme for migration (changes are not xm compatible)...

2876c2d6 10/17/2011 06:39 pm Guido Trotter

Abstract xen's 'xm' command as a constant

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

c2be2532 10/17/2011 06:39 pm Guido Trotter

xen: abstract instance config file naming

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

34fbc862 09/28/2011 02:34 pm Andrea Spadaccini

Migration: warn the user about hv version mismatch

  • hv_kvm.py, hv_xen.py
    - return the hypervisor version (if available) from GetNodeInfo
  • cmdlib.py
    - if hypervisor version is available during the migration, and the
    versions differ, warn the user...
3e40b587 09/20/2011 06:03 pm Andrea Spadaccini

Add tls_ciphers and use_vdagent options

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

bfe86c76 09/20/2011 05:04 pm Andrea Spadaccini

Added SPICE TLS option and related cert paths

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

b6267745 09/20/2011 05:04 pm Andrea Spadaccini

Implementation of TLS-protected SPICE connections

Added support for TLS-protected SPICE connections:

client/gnt_cluster.py, cli.py:
  • added three new parameters to renew-crypto (--new-spice-certificate,
    --spice-certificate, --spice-ca-certificate) and their validation....
ea064d24 09/13/2011 03:35 pm Andrea Spadaccini

Add SPICE compression and streaming options

Add the following SPICE audio/image compression and video streaming
detection hypervisor options:

  • spice_image_compression
  • spice_jpeg_wan_compression
  • spice_zlib_glz_wan_compression
  • spice_streaming_video...
4d2cdb5a 09/13/2011 03:29 pm Andrea Spadaccini

Add SPICE support to gnt-instance console

Also update related unit tests.

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

2ebdfbb5 09/07/2011 04:14 pm Andrea Spadaccini

Make KVM use the QXL vga driver with SPICE

Enable by default the QXL paravirtualized graphic card if SPICE is
enabled. The QXL driver is VESA compatible, so it degrades gracefully if
the guest OS does not have QXL drivers.

Signed-off-by: Andrea Spadaccini <>...

0e1b03b9 09/07/2011 12:41 pm Andrea Spadaccini

Use a loop to check SPICE parameters dependency

Use a loop to check if the user specified any SPICE option and SPICE
support is disabled.

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

b451c4c7 09/03/2011 01:03 pm Andrea Spadaccini

Added password for SPICE sessions

Added an optional parameter called spice_password_file that allows
the user to protect the SPICE login with the password contained in
the specified file.

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

91c10532 09/03/2011 01:03 pm Andrea Spadaccini

Draft implementation of QMP connection

Basic implementation of the QMP connection and related tests.

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

b459a848 08/30/2011 11:24 am Andrea Spadaccini

DeprecationWarning fixes for pylint

In version 0.21, pylint unified all the disable-* (and enable-*)
directives to disable (resp. enable). This leads to a lot of
DeprecationWarning being emitted even if one uses the recommended
version of pylint (0.21.1, as stated in devnotes.rst)....

e687ec01 08/25/2011 01:53 pm Michael Hanselmann

PEP8 style fixes

Identified using the “pep8” utility.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

b845c8a1 08/15/2011 06:46 pm Andrea Spadaccini

Handle network interfaces without IPs

If the user specified a network interface with no IPs, he would receive
an unhelpful "list index out of range" error. Fixed that.

Signed-off-by: Andrea Spadaccini <>
Signed-off-by: Guido Trotter <>...

11ae7a0a 08/15/2011 06:46 pm Andrea Spadaccini

Fixed potential unreferenced variable usage

I noticed a path in the code that would use spice_ip_version even if
it was not initialized. This patch fixes it.

Signed-off-by: Andrea Spadaccini <>
Signed-off-by: Guido Trotter <>...

b1cb62bd 08/12/2011 06:08 pm Andrea Spadaccini

Added basic support for SPICE

Implemented the following parameters:
- spice_bind
- spice_ip_version

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

d7e4a2b1 08/09/2011 03:32 pm Andrea Spadaccini

Fixed an error in the documentation of _GetKVMVersion

Fixed an epydoc compilation error that I introduced with last commit.

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

440351f8 08/09/2011 02:29 pm Andrea Spadaccini

Removed code duplication for calls to _GetKVMVersion

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

e2d14329 08/08/2011 06:50 pm Andrea Spadaccini

Changed NET_PORT_CHECK to REQ_NET_PORT_CHECK, to improve consistency

I originally made this change because I needed the OPT_NET_PORT_CHECK,
and I am committing it even if I don't need anymore OPT_NET_PORT_CHECK
because IMO it improves the consistency of the name of the wrappers....

990ade2d 07/29/2011 01:59 pm Stephen Shirley

Add "reboot_behavior" hypervisor flag

During instance installations, you do not want the instance to reboot
and start again with the same parameters, as that will most likely
re-start the install process. Therefore, when the instance requests a
reboot it should instead shutdown. This flag allows this to be...

d0c8c01d 07/25/2011 04:55 pm Iustin Pop

Most boring patch ever

s/'/"/ in (hopefully) the right places.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

4f580fef 07/21/2011 08:38 am Sébastien Bocahu

Add support for KVM keymaps

Signed-off-by: Sébastien Bocahu <>
Signed-off-by: Michael Hanselmann <>
Reviewed-by: Michael Hanselmann <>

61631293 07/15/2011 12:27 pm Stephen Shirley

Adding a wrapper around "xm console"

The wrapper will connect to the console, and check in the background if
the instance is paused, unpausing it as necessary.

Signed-off-by: Stephen Shirley <>
Reviewed-by: Michael Hanselmann <>

2f4c951e 07/15/2011 12:27 pm Stephen Shirley

Adding a wrapper around connecting to kvm console

The wrapper will connect to the console, and check in the background if
the instance is paused, unpausing it as necessary.

Signed-off-by: Stephen Shirley <>
Reviewed-by: Michael Hanselmann <>

b795a775 07/11/2011 05:53 pm Michael Hanselmann

Merge branch 'devel-2.4'

  • devel-2.4:
    ht: Add new check for numbers
    Fix off-by-one bug in job serial generation
    Shorten some unbreakable lines in man pages
    Correct some spelling mistakes
    Fix bug in recreate-disks for DRBD instances
    Fix a lint warning...
7238edb5 07/11/2011 05:16 pm Iustin Pop

Reverts the patch series about console wrappers

This reverts commits 030a9cb8022b83bf43ec14dfbafd943299bc01c4 and
ae082df0000a785b693b2f4aa434650a81a94bdf.

There are two problems:

- Makefile.am breakage, which is trivial to revert
- unittest breakage, which honestly I'm not sure how to fix and how...

323f9095 07/08/2011 03:15 pm Stephen Shirley

Add gnt-instance start --pause

Creates the instance, but pauses execution before booting. This combined
with 'gnt-instance console' unpausing instances means that the entire
boot process can be viewed and monitored.

Signed-off-by: Stephen Shirley <>...

ae082df0 07/08/2011 03:15 pm Stephen Shirley

Adding a wrapper around connecting to kvm console

The wrapper will connect to the console, and check in the background if
the instance is paused, unpausing it as necessary.

Signed-off-by: Stephen Shirley <>
Reviewed-by: Michael Hanselmann <>

030a9cb8 07/08/2011 03:15 pm Stephen Shirley

Adding a wrapper around "xm console"

The wrapper will connect to the console, and check in the background if
the instance is paused, unpausing it as necessary.

Signed-off-by: Stephen Shirley <>
Reviewed-by: Michael Hanselmann <>

cc8a8ed7 06/28/2011 12:56 am Apollon Oikonomopoulos

KVM: configure bridged NICs at migration start

Commit 5d9bfd870 moved tap interface handling from KVM to Ganeti, partly
to also solve the problem of routed interfaces getting configured too
early during live migrations, causing network anomalies. In that...

de2b0d1d 06/23/2011 05:47 pm Guido Trotter

Merge branch 'devel-2.4'

  • devel-2.4:
    LUInstanceCreate: use opcodes.RequireFileStorage
    Don't add ",boot=on" to disks on kvm >= 0.14
    KVM: fix per-instance stored UID value

Conflicts:
lib/cmdlib.py
- use RequireSharedFileStorage there

Signed-off-by: Guido Trotter <>...

4304964a 06/23/2011 04:51 pm Guido Trotter

Don't add ",boot=on" to disks on kvm >= 0.14

Under newer kvm this prevents the vm from starting.
Ah, change!

Signed-off-by: Guido Trotter <>
Reviewed-by: Michael Hanselmann <>

3af16328 06/22/2011 07:16 pm Apollon Oikonomopoulos

KVM: fix per-instance stored UID value

When using the pool security model, ExecuteKVMRuntime was storing the
instance's UID using str(uid), which would result in storing the
LockedUid.
_repr__() result:

$ cat /var/run/ganeti/kvm-hypervisor/uid/xxxxxxxxxxxxx...
93384b8c 05/11/2011 05:14 pm Guido Trotter

Merge branch 'devel-2.4'

  • devel-2.4:
    Use floppy disk and a second CDROM on KVM
    Document the selection of instance kernels
    Make root_path an optional hypervisor parameter
    Some man page updates
    Add 2 new variables to the OS scripts environment
    Add --no-wait-for-sync when converting to drbd...
fba7f911 05/10/2011 07:40 pm Marco Casavecchia

Use floppy disk and a second CDROM on KVM

Hi all,
this patch will add 3 new KVM parameters and a new option.

New Parameters:
- floppy_image_path = "" -> Specify the floppy image to load as
floppy disk.
- cdrom2_image_path = "" -> Specify a second cdrom image to load on...

7adf7814 05/10/2011 11:48 am René Nussbaumer

Make root_path an optional hypervisor parameter

This will allow us an easy migration to pv-grub, because a set root_path
confused pv-grub.

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

cc130cc7 05/02/2011 12:16 pm Marco Casavecchia

Use floppy disk and a second CDROM on KVM

Hi all,
this patch will add 3 new KVM parameters and a new option.

New Parameters:
- floppy_image_path = "" -> Specify the floppy image to load as
floppy disk.
- cdrom2_image_path = "" -> Specify a second cdrom image to load on...

41e794f6 03/08/2011 02:01 pm Apollon Oikonomopoulos

KVM: use cache=none for shared disk templates

Disable host cache for externally mirrored disks to avoid cache incoherency.
Without this, migrations between the same two nodes may end up in disk
corruption.

This is a runtime override of cluster defaults, mostly a workaround....

199b2053 01/18/2011 02:55 pm Apollon Oikonomopoulos

KVM: Add auxiliary functions to handle tap devices

Add two new functions, _OpenTap and _ProbeTapVnetHdr, to
hypervisors.hv_kvm.

_ProbeTapVnetHdr checks if the host kernel supports the virtio net header
(IFF_VNET_HDR) feature. This feature allows KVM to ask the the host kernel to...

5d9bfd87 01/18/2011 02:55 pm Apollon Oikonomopoulos

KVM: Perform network configuration in Ganeti

This patch introduces network configuration for KVM in Ganeti.

There are three problems with having KVM perform network configuration via ifup
scripts:
a) Ganeti never gets to know the tap interface that is associated with an...

7be85163 01/18/2011 02:55 pm Guido Trotter

KVM: don't fail removing non-existing nic path

This shouldn't normally happen, but if it does no need to fail.

Signed-off-by: Guido Trotter <>
Reviewed-by: Michael Hanselmann <>

55cc0a44 01/07/2011 05:34 pm Michael Hanselmann

Use new console information in hypervisor abstraction

This makes use of the new way of returning console information from the
master daemon. Unittests are included.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

049383d9 12/06/2010 08:48 pm Adeodato Simo

hv_kvm.py: fix some lint issues introduced in 4b784cf

In particular:

- break as couple lines that were longer than 80 characters
- fix a couple "comma not followed by a space"
- fix an unused variable warning

Signed-off-by: Adeodato Simo <>...

3f2eba25 12/03/2010 05:48 pm Miguel Di Ciurcio Filho

kvm: Make _GetKVMVersion() return integers

The current code returns the major, minor and rev portions of the version of
KVM as strings. Returning them as integers makes it easier to compare.

Signed-off-by: Miguel Di Ciurcio Filho <>...

4b784cf8 12/03/2010 05:48 pm Miguel Di Ciurcio Filho

kvm: Improve network syntax and tests

The current syntax when defining a NIC uses a pair of arguments, like this:

-net tap,vlan=0 -net nic,vlan=0,model=virtio

When using this pair, internally KVM will create a VLANState structure to send
ethernet frames between the guest NIC and the host tap device. This is...

e695efbf 11/27/2010 07:29 pm Iustin Pop

Add missing paramter and unittests for this case

While git-am'ing the blockdev_prefix patch, I modified the hv_xen.py
file but forgot to amend the patch :(, so here it is.

Furthermore, to detect such inconsistencies in the future, a unittest is
added that cross-checks the default parameters in constants.py and the...

525011bc 11/27/2010 06:11 pm Maciej Bliziński

Adding blockdev_prefix to hypervisor options

Allows to install Red Hat based systems, for example Oracle Linux.
Tested with OEL.

The hypervisor by default offers a device named 'sda'. If the SCSI
module is already loaded, the disk device can't be created due to naming...

72884fef 10/05/2010 06:08 pm Michael Hanselmann

Merge branch 'devel-2.2'

  • devel-2.2:
    Add simple unittest for utils.CommaJoin
    LUDelTags: Improve formatting of error message
    LUGetTags: Acquire locks in shared mode
    gnt-cluster: Replace hardcoded “xenvg” with value retrieved from master
    Export VG name via LUQueryConfigValues...
9d3015f9 10/05/2010 04:54 pm Guido Trotter

kvm: collapse two consecutive extend calls

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

4f958b0b 10/05/2010 04:45 pm Miguel Di Ciurcio Filho

kvm: Introduce support for -mem-path

Using hugepages, KVM instances can get a good performance boost. To
activate that, we need to pass the -mem-path argument to KVM along with
the mount point of the hugetlbfs file system on the node.

For the sake of memory availability computation, we use the -mem-prealloc...

df5758b1 10/05/2010 12:11 pm Iustin Pop

Merge branch 'devel-2.2'

  • devel-2.2:
    gnt-job info: Sort input fields
    KVM: Add function to check the hypervisor version
    Bump version to 2.2.0, update NEWS
    Fix instance rename regression from 3fe11ba3
    Fix instance rename regression from 3fe11ba3...
b52d85c1 10/04/2010 07:06 pm Guido Trotter

KVM: Add function to check the hypervisor version

Signed-off-by: Guido Trotter <>
Reviewed-by: Michael Hanselmann <>

5ee6fffc 09/22/2010 05:57 pm Michael Hanselmann

Merge branch 'devel-2.2'

  • devel-2.2:
    NEWS: Add 2.2.0~rc2 release date
    Bump version to 2.2.0~rc2
    Fix mac checker regex
    Remove two old aliases
    Fix migration on new KVMs
    Fix typo in ganeti man page
    cli: Pass options in {Add,Remove}Tags
    Prepare 2.2.0~rc2 release...
01eaf2fb 09/20/2010 12:04 pm Vitaly Kuznetsov

Fix migration on new KVMs

New KVMs (0.12.1.2-el6 and 0.13.5 tested) exit immediately after
unsuccessful network connection when they are in "-incoming" mode. The
simple check netutils.TcpPing causes remote kvm to exit so the migration
will always fail. This check is also redundant by the way as if the...

0f979a34 08/18/2010 07:59 pm Guido Trotter

Merge branch 'devel-2.2'

  • devel-2.2:
    RAPI client: Support modifying instances
    RAPI: Allow modifying instance
    Small fixes for instance creation via RAPI documentation
    gnt-debug: Extend job queue tests
    jqueue: Mark opcodes following failed ones as failed, too...
623fea30 08/18/2010 07:58 pm Guido Trotter

Merge branch 'devel-2.1' into devel-2.2

  • devel-2.1:
    Fix --master-netdev arg name in gnt-cluster(8)
    Restore 'tablet mouse on vnc' behavior
    Document the usb_mouse hv parameter
    Revert "Add -usbdevice tablet to KVM when using vnc"

Conflicts:
man/gnt-instance.sgml...

8b312c1d 08/18/2010 11:26 am Manuel Franceschini

Introduce new IPAddress classes

This patch unifies the netutils functions dealing with IP addresses to
three classes:
- IPAddress: Common IP address functionality
- IPv4Address: IPv4 specific functionality
- IPv6address: IPv6-specific functionality

Furthermore it adds methods to check whether an address is a loopback...

31f6f67a 08/17/2010 03:04 pm Guido Trotter

Restore 'tablet mouse on vnc' behavior

We needed to revert commit 5b062a58ac76b39c2dc6a7e1543affdf43dc7ee7
because it was in conflict with the usb_mouse hv parameter. Here we
reintroduce its functionality only when usb_mouse is not specified.

Signed-off-by: Guido Trotter <>...

78d019a0 08/17/2010 03:04 pm Guido Trotter

Revert "Add -usbdevice tablet to KVM when using vnc"

This reverts commit 5b062a58ac76b39c2dc6a7e1543affdf43dc7ee7.
This fixes issue 109. The mouse type can be set with the usb_mouse
hv parameter.

Signed-off-by: Guido Trotter <>
Reviewed-by: Michael Hanselmann <>

783a6c0b 07/23/2010 08:26 pm Iustin Pop

Rename migration type to migration mode

This is in preparation for the rename of the opcode 'live' parameter to
'mode'.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

e3ed5316 07/16/2010 12:48 pm Balazs Lecz

LXC: Add cpu_mask hypervisor parameter

Also implement syntax checking.

Signed-off-by: Balazs Lecz <>
Reviewed-by: Iustin Pop <>

e71b9ef4 07/16/2010 10:46 am Iustin Pop

Add a migration type global hypervisor parameter

Since migration live/non-live is more stable (e.g.) for Xen-PVM versus
Xen-HVM, we introduce a new parameter for what mode we should use by
default (if not overridden by the user, in the opcode).

The meaning of the opcode 'live' field changes from boolean to either...

748e4b5a 07/15/2010 05:38 pm Michael Hanselmann

KVM hypervisor: Use utils.ShellWriter for network script

This patch converts hv_kvm to use utils.ShellWriter for writing
the network script. It also adds a few unittests (the first
for any hypervisor modules).

Signed-off-by: Michael Hanselmann <>...

13c564e7 07/09/2010 06:17 pm Balazs Lecz

LXC: Create per-instance log files

This replaces the single global log file with per-instance logs.
The instance log file is not truncated when the instance is started.

Signed-off-by: Balazs Lecz <>
Reviewed-by: Iustin Pop <>

c83864fe 07/09/2010 06:17 pm Balazs Lecz

LXC: Fix wording of error messages

Signed-off-by: Balazs Lecz <>
Reviewed-by: Iustin Pop <>

b8aa46ed 07/09/2010 06:17 pm Balazs Lecz

LXC: Fix GetInstanceInfo()

Don't try to get cgroups info if instance is not running.

Signed-off-by: Balazs Lecz <>
Reviewed-by: Iustin Pop <>

a744b676 07/09/2010 04:37 pm Manuel Franceschini

Introduce lib/netutils.py

This patch moves network utility functions to a dedicated module.

Signed-off-by: Manuel Franceschini <>
Reviewed-by: Iustin Pop <>

63cef6c3 07/08/2010 06:57 pm Balazs Lecz

LXC: Fix GetAllInstancesInfo()

Signed-off-by: Balazs Lecz <>
Reviewed-by: Iustin Pop <>

c4d3e57f 07/07/2010 09:07 pm Balazs Lecz

LXC: Report actual number of CPUs

Signed-off-by: Balazs Lecz <>
Reviewed-by: Iustin Pop <>

637c8ab8 07/07/2010 04:36 pm Balazs Lecz

LXC: add lxc.console to the generated lxc.conf file

Signed-off-by: Balazs Lecz <>
Reviewed-by: Iustin Pop <>

d01baf53 07/07/2010 04:36 pm Balazs Lecz

LXC: Use lxc-info to get instance info

Signed-off-by: Balazs Lecz <>
Reviewed-by: Iustin Pop <>

a188f1ef 07/06/2010 05:10 pm Balazs Lecz

LXC: use utils.GetMounts()

Signed-off-by: Balazs Lecz <>
Reviewed-by: Iustin Pop <>

e8cd390d 07/06/2010 05:10 pm Balazs Lecz

hv_chroot: use utils.GetMounts()

Signed-off-by: Balazs Lecz <>
Reviewed-by: Iustin Pop <>

4b5e40a5 06/30/2010 04:46 pm Iustin Pop

Barebones LXC hypervisor

This needs lots of work, but it can successfully launch an LXC-based
instance. See the docstring for the limitations/work to be done.

Signed-off-by: Iustin Pop <>
Reviewed-by: Balazs Lecz <>

c0c3fa27 06/30/2010 02:32 pm Manuel Franceschini

Introduce utils.IsValidIP{4,6}()

This patch introduces functions to check for valid IPv4 and IPv6
addresses and converts IsValidIP() to return True if it is either a IPv4
or a IPv6 address.

For now we do not change the functional behavior and replace IsValidIP...

14f5f1b6 06/30/2010 01:42 pm Manuel Franceschini

Replace '0.0.0.0' with constant

Signed-off-by: Manuel Franceschini <>
Reviewed-by: Guido Trotter <>

6df291d4 06/10/2010 10:57 pm Iustin Pop

Move fake hypervisor run dir under ganeti

This makes it uniform with the other hypervisors.

Signed-off-by: Iustin Pop <>
Reviewed-by: Balazs Lecz <>

297e6e53 06/04/2010 04:22 pm Guido Trotter

_ExecuteKVMRuntime: fix hv parameter fun

When executing the kvm runtime we were currently accessing a mix of the
parameters as configured currently on the instance and the ones it was
started with. We were doing it without a precise criteria, but quite by...

fea922fa 06/04/2010 04:22 pm Guido Trotter

Update FinalizeMigration docstring

This is used not only for aborted migrations, so the docstring should
reflect that.

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

547a63b7 06/01/2010 08:18 pm Balazs Lecz

Add KVM chroot feature

This patch adds a new boolean hypervisor parameter to the KVM hypervisor,
named 'use_chroot'.
If it's turned on for an instance, than KVM is started in "chroot mode":
Ganeti creates an empty directory for the instance and passes the path...

e43d4f9f 05/31/2010 03:16 pm Apollon Oikonomopoulos

KVM: Migration bandwidth and downtime control

Introduce 2 new hypervisor options, migration_bandwidth and migration_downtime
and implement KVM migration bandwidth and downtime control.

migration_bandwidth controls KVM's maximal bandwidth during migration, in...

e0561198 05/27/2010 02:43 pm Iustin Pop

Fix two race conditions in reboot instance

If the instance crashes between backend.InstanceReboot checks the list
of running instances and the execution of hv_xen.RebootInstance,
ini_info will be None. And if the instance doesn't reboot fast enough,
new_info will be None. Both cases lead to “TypeError: unsubscriptable...

fbe27e2b 05/18/2010 02:08 pm Guido Trotter

KVM: vhost net acceleration support

This will only work on patched or newer (>= 2.6.34) kernels and with a
patched version of qemu-kvm.

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

682f7601 05/12/2010 02:10 pm Guido Trotter

Convert some ReadFile calls to ReadOneLineFile

For passwords we require strict oneliners, we're a bit more lax with pid
and uid files.

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

036c7f68 05/07/2010 05:25 pm Guido Trotter

Merge branch 'stable-2.1' into devel-2.1

  • stable-2.1:
    Bump version for 2.1.2.1 release
    Update NEWS for Ganeti 2.1.2.1
    KVM: only export instance tags if present

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

1cc831ea 05/07/2010 04:14 pm Guido Trotter

KVM: only export instance tags if present

Currently non-tagged instances fail starting with a TypeError.

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>
Reviewed-by: Balazs Lecz <>

98c98ab9 05/07/2010 02:34 pm Guido Trotter

Hypervisors: use utils.EnsureDirs

Swap a few os.mkdir calls with utils.EnsureDirs

Signed-off-by: Guido Trotter <>
Reviewed-by: Balazs Lecz <>

87e510fd 04/28/2010 02:57 pm Apollon Oikonomopoulos

KVM: make tags available in KVM_NET_SCRIPT

Make instance tags available as a space-separated list during the execution of
the network setup script. This allows tag-based control of things like firewall
rules and/or networking setup.

Signed-off-by: Guido Trotter <>...

14b3f969 04/22/2010 02:32 pm Iustin Pop

Fix broken commit 9e302a8

Commit 9e302a8 split the StopInstance function in two without properly
duplicating the local variables.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

9e302a8c 04/21/2010 08:22 pm Iustin Pop

hv_chroot: move unmount to CleanupInstance()

This allows cleanup to be done properly if the "instance" wasn't running
at all (based on the CleanupInstance framework, instead of the retry in
hypervisor).

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

d271c6fd 04/21/2010 08:22 pm Iustin Pop

Add a hypervisor constant for migration support

This variable can be used by other tools to determine in a generic way
whether a given hypervisor supports migration or not.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

74a4c11b 04/21/2010 08:01 pm Guido Trotter

Fix indentation error

Commit 9cf4321fc39ec36359d9c90b22b36d33b6adc2f4 indented some lines by
4 spaces rather than 2, and was git-amed without noticing. Fixing.

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

9cf4321f 04/21/2010 05:48 pm Apollon Oikonomopoulos

Only use boot=on on non-ide disks only (KVM)

boot=on implies that KVM boots using extboot. This is only required
to boot non-IDE disks and has the side-effect that there is at most
one bootable device. This behaviour breaks some operating systems,
most notably the windows installer that tries to chainload the hard-disk...