- Dec 21, 2007
-
-
Alexander Schreiber authored
Update documentation to document the HVM proof-of-concept. Reviewed-by: iustinp
-
- Dec 20, 2007
-
-
Alexander Schreiber authored
This patch implements a first proof-of-concept for HVM support in Ganeti. Due to the nature of this patch, it is intended for test environments only. Reviewed-by: iustinp
-
Alexander Schreiber authored
Wrap error handling around creating the instance config file. Reviewed-by: iustinp
-
Alexander Schreiber authored
Abstract the parts of the Xen hypervisor interface shared by both PVM and HVM into a generic interface, subclass the special case PVM from that. Prepatch for adding HVM support. Reviewed-by: iustinp
-
- Dec 19, 2007
-
-
Iustin Pop authored
Currently, RunCmd is written with the assumption that programs will have a small stderr output, therefore we read the child's stdout (which can be big, so we don't want to block the child) and then the stderr (which is small, so it shouldn't block). However, with the ‘gnt-cluster verify-disks’ command, we ourselves generate heavy stderr, therefore we break the ganeti-watcher which runs the verify-disks via utils.RunCmd. This patch turns the RunCmd command into an poll-based one, which means any kind of interleaved output by a child on stdout/stderr will be handled correctly. Of course, since the output is buffered in memory, there are other ways to break RunCmd(). But at least this should fix the common case. Reviewed-by: hansmi
-
- Dec 18, 2007
-
-
Alexander Schreiber authored
Change the internal hypervisor API for GetShellCommandForConsole, we now call it with the instance instead of just the instance name. This is a prep patch for HVM, since HVM needs more than just the instance name to determine a way of console access. (this is a resend due to mail adress tyop) Reviewed-by: iustinp
-
Alexander Schreiber authored
Move constant definitions for hypervisor into constants.py Reviewed-by: ultrotter
-
Guido Trotter authored
hint is declared as a named argument for the LogWarning function. Make its caller pass it naming it. Reviewed-by: iustinp
-
- Dec 17, 2007
-
-
Alexander Schreiber authored
Extends the instance object by adding a port item, also adds changes to print this port via gnt-instance info. Reviewed-by: iustinp
-
Iustin Pop authored
Since 8.0.6 and lower have issues that break Ganeti's usage of drbd, this patch notes the required version of DRBD. Reviewed-by: ultrotter
-
- Dec 12, 2007
-
-
Iustin Pop authored
When waiting for the lock and pressing ^C, the user will get a backtrace as the KeyboardInterrupt exception is not handled. The patch adds a simple method of handling it. Note that this is not about ^C in any other place. Reviewed-by: schreiberal,imsnah
-
Iustin Pop authored
This adds some information about the new ‘verify-disks’ command. Reviewed-by: imsnah
-
Iustin Pop authored
This patch modifies the watcher to run the ‘gnt-cluster verify-disks’ command and to log its output (if any). Reviewed-by: imsnah
-
Iustin Pop authored
This patch adds the OpVerifyDisks handling in mcpu.py and the verify-disks command in the gnt-cluster script, which for every instance computed by LUVerifyDisks submits a new OpActivateInstanceDisks request. Reviewed-by: imsnah
-
Iustin Pop authored
This patch adds a new LUVerifyDisks that implements the OpVerifyDisks. The algorithm is that by determining not-used logical volumes for instances that are supposed to be running, we presume from there that the DRBD devices are not online and therefore one should ‘activate-disks’ for those instances. Reviewed-by: imsnah
-
Iustin Pop authored
This patch adds the definition of a new opcode that will be used to compute the list of instances with not-online disks. Reviewed-by: imsnah
-
- Dec 11, 2007
-
-
Iustin Pop authored
Currently, the volume_list call returns only the volume size. However, it is useful to also have two other things: the 'inactive' state of the volume (which might trigger a ‘vgchange -a y’ on the volume group) and the online state (which shows if the volume is in use or not). Since this modifies an RPC call, we also bump the protocol version, although the single user of the call didn't care about the dictionary values, only about the keys. Reviewed-by: imsnah
-
- Dec 04, 2007
-
-
Iustin Pop authored
Reviewed-by: imsnah
-
Michael Hanselmann authored
Reviewed-by: schreiberal
-
Alexander Schreiber authored
Use result.stdout instead of result.output to avoid potential confusion by merged in error messages from stderr. Reviewed-by: iustinp
-
Iustin Pop authored
Currently, the Hypervisor error raised on ‘xm create’ failure doesn't contain the actual output from the command, thus what we log to the node daemon log is not helpful enough. This patch fixes that. Reviewed-by: schreiberal
-
Alexander Schreiber authored
Reviewed-by: imsnah
-
- Dec 03, 2007
-
-
Alexander Schreiber authored
Reviewed-by: imsnah
-
Michael Hanselmann authored
- When line wrapping is needed, move spaces to the next line. - Remove embedded line breaks from error messages. Reviewed-by: schreiberal
-
Michael Hanselmann authored
Reviewed-by: iustinp
-
Michael Hanselmann authored
Reviewed-by: schreiberal
-
- Nov 30, 2007
-
-
Alexander Schreiber authored
Reviewed-by: iustinp
-
Iustin Pop authored
This fixes the parsing of integers in the drbdsetup show output with newer pyparsing versions. Basically, the convert-to-int action that we use was taken from the example documentation of an older pyparsing version that automatically uses only the second element if the result is returned as a tuple, but this was deprecated for a while and removed in 1.4.3. Based on a nice report by Jorge Cabello <jorge@aspl.es>, and confirmation about pyparsing behaviour from its author. Thanks! Reviewed-by: imsnah
-
- Nov 29, 2007
-
-
Iustin Pop authored
This patch replaces the hardcoded ‘/var/lock/’ directory with one based on LOCALSTATEDIR. Reviewed-by: imsnah
-
Iustin Pop authored
This patch adds logging of command failures to the debug log in case the user either started the command (gnt-*) or the node daemon with the debug flag. Reviewed-by: imsnah
-
- Nov 28, 2007
-
-
Guido Trotter authored
lexgrog cannot parse the current ganeti-os-interface.7 manpage, which in turn leads to a lintian warning. In order to fix this the NAME section must have the standard format which doesn't allow multiple words in the first field. Reviewed-by: iustinp
-
Iustin Pop authored
Reviewed-by: imsnah
-
- Nov 27, 2007
-
-
Iustin Pop authored
Currently, the results of ConfigWriter.VerifyConfig() are lost. Make sure we log them too in cluster verify. Reviewed-by: ultrotter
-
Iustin Pop authored
We want the name of the example OS to be nicer for packagers, so update the install documentation accordingly. Also, put in a notice about using the latest release OS version, so if we forget to update this doc, we are not completely wrong. Reviewed-by: schreiberal
-
- Nov 26, 2007
-
-
Iustin Pop authored
This reverts commit 397, as the support in autoconf for docdir is present since 2.59c, and this is too new for some distributions. Reviewed-by: imsnah
-
Iustin Pop authored
This patch adds checking for our external python modules at the ./configure stage, as it's better to check than rely on documentation. The patch adds one autoconf macro from the autoconf macro archive (http://autoconf-archive.cryp.to) Reviewed-by: imsnah
-
Iustin Pop authored
Since we now do changes of remote peers in two steps (Attach with no network information and then Attach with the new peer's data), we don't need this operation anymore. Reviewed-by: imsnah
-
Iustin Pop authored
This patch splits the single operation of replace peer into two distinct phases, in order to make a single change to the instance configuration: - detach from network - if at least one drbd device succeeded, make one change to the instance, pointing all disks to the new peer - attach to the new peer This should eliminate the case when a failure in the second reattach can leave the instance with two secondaries. Reviewed-by: imsnah
-
Iustin Pop authored
This patch adds a new success condition for identifying DRBD8 devices: if the local device is correct, but the network peer is not, we shutdown the network and attach to the correct one (this also handles going to standalone mode). This new check (and its actions) is based on the fact that we don't pass incorrect data from the master to the node (otherwise we could start syncing with an incorrect peer. Reviewed-by: imsnah
-
Iustin Pop authored
This patch adds a check in _AssembleNet so that if we are passed None value in the unique_id, we instead switch to standalone mode. Reviewed-by: imsnah
-