- 07 Feb, 2009 1 commit
-
-
Guido Trotter authored
The cdrom image has the same meaning than in Xen HVM, and so does boot_order, even though it has a slightly different syntax, and uses the value 'disk' too boot from disk and 'cdrom' to boot from cdrom. Reviewed-by: iustinp
-
- 05 Feb, 2009 2 commits
-
-
Guido Trotter authored
With this parameters VNC for KVM is able to be protected by tls, optionally with an x509 certificate, and optionally verifying the client as well. Additionally in this patch we limit the bind address to being a directory, rather than a file or a directory, for simplicity, as it allows for the same level of control anyway. Reviewed-by: iustinp
-
Guido Trotter authored
Before we forced the VNC_BIND_ADDRESS to be an ip. Now we also accept a path, and bind the instance to it, or to a file in it if it's a directory. Reviewed-by: iustinp
-
- 03 Feb, 2009 1 commit
-
-
Guido Trotter authored
Or actually more so. If this function gets called while instances get shut down, it might try to report information on instances which don't exits. Try to fail gracefully if that happens, by just skipping an instance which has disappeared in the meantime. Reviewed-by: iustinp
-
- 29 Jan, 2009 6 commits
-
-
Guido Trotter authored
Reviewed-by: iustinp
-
Guido Trotter authored
We'll also enable a tablet usb device, as suggested by the kvm man page. Reviewed-by: iustinp
-
Guido Trotter authored
Reviewed-by: iustinp
-
Guido Trotter authored
Under KVM we don't strictly need a kernel and initrd. If some are passed we'll use them, otherwise the guest OS will need to behave as fully native, and have its own boot loader and kernel. The root_path hypervisor parameter becomes mandatory only if a kernel is specified. Reviewed-by: iustinp
-
Guido Trotter authored
Up until now a KVM instance was forced to have a serial port. With this change this is no longer mandatory, by default we'll use one, but if the HV_SERIAL_CONSOLE parameter is set to False we'll do without. Reviewed-by: iustinp
-
Guido Trotter authored
Sometimes the hypervisor will use the instance hv and/or be parameters to determine the best shell command. This is not possible, though, currently, as the instance hv/beparams are not filled, so we have to pass the filled versions separately. Reviewed-by: iustinp
-
- 28 Jan, 2009 1 commit
-
-
Iustin Pop authored
This patch correctly marks the drives as read-only for Xen, and raises and exception for KVM since it doesn't support read-only drives. Reviewed-by: ultrotter
-
- 27 Jan, 2009 3 commits
-
-
Guido Trotter authored
This parameter allows a different path to be passed to the instance kernel. The new parameter is mandatory, and by default has the value of the old hardcoded value for both kvm and xen. Beta1 clusters will need to have this parameter added for their instances to be able to boot. Reviewed-by: iustinp
-
Guido Trotter authored
This is a class method, because it calls _InstanceSerial, which is another class method. The patch changes it to classmethod for all the hypervisor classes. Reviewed-by: iustinp
-
Guido Trotter authored
Those methods need nothing from the instantiated class, and just manipulate strings, and fetch some class global variables, so they can be classmethods. Reviewed-by: iustinp
-
- 23 Jan, 2009 1 commit
-
-
Guido Trotter authored
A missing 'be' was present in the error string for both xen and kvm, when the kernel or initrd path was not absolute. Reviewed-by: imsnah
-
- 21 Jan, 2009 8 commits
-
-
Guido Trotter authored
If the KVM live migration ends up in a 'failed' state it has been aborted at the kvm level, and the machine is still running locally. We support also the 'cancelled' state even though there should be no way of reaching it, without manual intervention. Reviewed-by: iustinp
-
Guido Trotter authored
Reviewed-by: iustinp
-
Guido Trotter authored
The tcp port used for migrating KVM instances is selectable at ./configure time. We use a single port as nodes are locked anyway during a migration, so no two migrations can happen at the same time to the same node. Reviewed-by: iustinp
-
Guido Trotter authored
Throughout the kvm code we very often look for the instance pidfile name, read it, and check if the process is alive. Abstract this into a private function and use that one instead. This patch also changes RebootInstance to check whether the instance is alive before trying to reboot it. Reviewed-by: iustinp
-
Guido Trotter authored
RebootInstance was broken, because it just used to call StartInstance with wrong parameters. With this patch we still stop the instance, but use the saved kvm runtime to start it again. Reviewed-by: iustinp
-
Guido Trotter authored
When we ask the instance to shutdown sometimes the command won't work, especially if the instance isn't fully booted up. We'll wait for a bit, and give it a few chances before giving up. Reviewed-by: iustinp
-
Guido Trotter authored
At instance startup time we save the kvm runtime, and at stop time we delete it. This patch also includes a function to load the kvm runtime, which is unused yet. Reviewed-by: iustinp
-
Guido Trotter authored
Before we used to generate the kvm command line and then just run it. With this patch we split the generation from the time it is run, allowing us to save it and replay it at reboot. We must take special care about instance nics: - We can't include them in the saved command line, as they point to temporary files - We can't just generate them at exec time, because we would apply those changes, but not all the other ones, to a running instance, thus making it inconsistent (for example if an instance had a memory increased and one more nic, in a soft reboot we would add the nic, but not the memory) So we'll just save the instance nic data at the time the kvm runtime data is generated, and transform it into actual parameters at execution time. Reviewed-by: iustinp
-
- 20 Jan, 2009 3 commits
-
-
Guido Trotter authored
Currently we keep pid files and control files. In the conf dir we'll also keep the data to start the instance anew, and the network interface scripts. These will then be copied to a separate area (since _CONF_DIR could be mounted 'noexec') and used to start the instance. This patch also adds comments to state what the various directories are used for. Reviewed-by: iustinp
-
Guido Trotter authored
Abstract the monitor and serial socket naming in two functions, and reuse them to cleanup the files after shutdown. Reviewed-by: iustinp
-
Guido Trotter authored
Reviewed-by: iustinp
-
- 07 Jan, 2009 1 commit
-
-
Iustin Pop authored
This is a partial forward-port of commit 1136 on the 1.2 branch: The hypervisor doesn't need to be passed the whole block device structure, so we'll just give it the block device name on the local node, and the name as seen by the instance. This will make it easier to manipulate it later without messing with the block devices (eg. by changing the system name to a symlink to the name itself). Since the HVM hypervisor changes the "virtual" name a note is added calling for a redesign that doesn't need this change, as different hypervisors and emulation types will anyway have different names for exported devices. Reviewed-by: iustinp The changes in this patch compared to the original are: - we keep passing the original disk object, not for its iv_name, but for it's physical_id which is needed by the file driver (this could be fixed maybe) - we don't use the iv_name anymore, since in 2.0 we already use the index of the device Original-Author: ultrotter
-
- 16 Dec, 2008 1 commit
-
-
Guido Trotter authored
Call socat with a full path specified at configure time, rather than just by its name, and check for the binary to exist at hypervisor verify. Reviewed-by: iustinp
-
- 14 Dec, 2008 1 commit
-
-
Iustin Pop authored
Reviewed-by: amishchenko
-
- 11 Dec, 2008 1 commit
-
-
Iustin Pop authored
This patch should fix all outstanding epydoc parsing errors; as such, we switch epydoc into verbose mode so that any new errors will be visible. Reviewed-by: imsnah
-
- 02 Dec, 2008 2 commits
-
-
Guido Trotter authored
Some calls to the HV parameters were missing them. Reviewed-by: imsnah
-
Guido Trotter authored
Reviewed-by: imsnah
-
- 14 Oct, 2008 2 commits
-
-
Iustin Pop authored
I'm not sure which parameters it should use, I took all I saw in the code. Update: ultrotter says the list is OK for now. Reviewed-by: ultrotter
-
Iustin Pop authored
This patch changes the hypervisor functions to use the beparams dict instead of the instance attributes. Reviewed-by: ultrotter
-
- 13 Aug, 2008 2 commits
-
-
Guido Trotter authored
- Remove a few experiemental code lines left as comments - Rework first disks' boot=on addition, which was calculated twice - Remove an empty line - Remove reference to hvm_pae which doesn't apply to kvm Reviewed-by: imsnah
-
Guido Trotter authored
ht_kvm.py contains the code for ganeti to work under kvm. This patch also modifies Makefile.am to ship that file, and lib/hypervisor/__init__.py to import it, and add kvm to the hypervisors map. Reviewed-by: imsnah
-