Statistics
| Branch: | Tag: | Revision:

root @ 19b9ba9a

# Date Author Comment
19b9ba9a 08/24/2010 05:57 pm Michael Hanselmann

Add simple lock monitor

This patch adds an initial implementation of a lock monitor, accessible
for the user through “gnt-debug locks”. It currently shows all resource
locks: BGL, nodes and instances. Config and job queue locks could be
shown too, but wouldn't be of much help. The current owner(s) and mode...

daba67c7 08/24/2010 05:27 pm Michael Hanselmann

workerpool: Allow setting task name

With this patch, the task name is added to the thread name and will show up in
logs. Log messages from jobs will look like “pid=578/JobQueue14/Job13 mcpu:289
DEBUG LU locks acquired/cluster/BGL/shared”.

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

a4ebd726 08/23/2010 06:26 pm Michael Hanselmann

Use one function to parse “--fields” option values

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

4fb780d1 08/23/2010 05:57 pm Michael Hanselmann

locking.LockSet: Use function to get member lock name

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

049088b2 08/23/2010 05:57 pm Michael Hanselmann

Finalize removal of “lock_status” job field

When removing the field in commit 9bdab62198, I forgot to remove some parts.

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

0849f36b 08/23/2010 05:33 pm Michael Hanselmann

Prepare 2.2.0~rc1 release

Update NEWS and version number.

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

634a9a35 08/23/2010 12:50 pm Iustin Pop

setup-ssh: fix updating of authorized_keys

Due to what seems like a bug (or inconsistency) in paramiko, files
opened with a+ over SFTP need a seek() in order for the user to be able
to read data from them. We implement this, and rely on the fact that we
do iterate over all lines before writing and that the file is opened in...

3dc66ebc 08/23/2010 12:47 pm Iustin Pop

setup-ssh: Also use keys from the ssh-agent

Currently, setup-ssh only uses one disk-based key. This means that any
setup where we use keys from ssh-agent (which do not necessarily exist
on disk) will break when moving from the old method to setup-ssh.

This patch moves the SSH key handling to separate functions, and uses...

8647a52c 08/20/2010 05:41 pm Iustin Pop

setup-ssh: fix the logging error message

This took a bit of interesting debugging, but the issue seems to be that
on older python/logging/paramiko (I'm not sure which is at fault here),
the other threads are finishing later than the main thread, so the
logging module closes the logging file (but doesn't unregister it)...

7bff16bd 08/20/2010 05:41 pm Iustin Pop

setup-ssh: only read the ssh port once

Then reuse it. With certain setups, this could be slow when pre-seeding
an entire cluster.

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

5c654e95 08/20/2010 05:41 pm Iustin Pop

setup-ssh: redo the logging levels

There is not enough logged by default on stderr, and way too much
information in the log file.

Since we don't want to debug paramiko itself, we filter only warnings
and above.

Otherwise, we make WARNINGS the default level, with verbose meaning INFO...

7a6a27af 08/20/2010 05:41 pm Iustin Pop

setup-ssh: try to use key auth first

This patch changes the setup-ssh workflow to try key authentication
first, and then fall-back to password authentication. The password is
also read lazily, with no prompts if we can authenticate via keys.

Signed-off-by: Iustin Pop <>...

a4978169 08/20/2010 05:16 pm Michael Hanselmann

Use Sphinx' :rfc: extension to refer to RFCs

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

981e0168 08/20/2010 05:16 pm Michael Hanselmann

Document non-standard usage of JSON in RAPI

This was requested in issue 118.

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

2175e25d 08/20/2010 01:03 pm Manuel Franceschini

Fix small spelling mistake

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

48418fea 08/19/2010 06:48 pm Iustin Pop

Fix a few commands behaviour with dry-run

These commands use or display the result from the LU, so in case of
dry-run, they will crash or display just 'None'. At least checking that
the result is 'true' (in the boolean sense) will make them work better.
...

a0a6ff34 08/19/2010 06:48 pm Iustin Pop

Stop adding the dry-run option by default

Currently cli.py unconditionally adds the dry-run option. This patch
disables this, and exports dry-run as a normal option.

The other alternative I tried to implement (adding a new fake option for
disabling the auto-add per individual command) would require changes in...

db5a8a2d 08/19/2010 06:48 pm Iustin Pop

Explicitly add dry-run to some commands

Based on manual inspection (that the command only does a submit of some
jobs/opcodes), we re-add the dry-run option on a subset of the existing
commands.

A few more commands could use dry-run, but the code doesn't deal nicely...

9bdab621 08/19/2010 06:30 pm Michael Hanselmann

jqueue: Remove lock status field

With the job queue changes for Ganeti 2.2, watched and queried jobs are
loaded directly from disk, rendering the in-memory “lock_status” field
useless. Writing it to disk would be possible, but has a huge cost at
runtime (when tested, processing 1'000 opcodes involved 4'000 additional...

1377433b 08/19/2010 06:30 pm Michael Hanselmann

QA: Run simple job queue test

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

29eddf2d 08/19/2010 05:02 pm Guido Trotter

Merge branch 'devel-2.1' into devel-2.2

  • devel-2.1:
    Don't ignore secondary node silently

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

af5970ab 08/19/2010 04:55 pm Guido Trotter

Don't ignore secondary node silently

Currently on non-mirrored disk templates the secondary node is ignored
silently. This patch adds a check for this case, and warns the user
should this be happening. This solves issue 113.

The patch also moves a prereq check to an argument check. This is ok...

3bb5c580 08/19/2010 03:10 pm Iustin Pop

etags: force Python as a language

etags has cannot properly identify the scripts/gnt-* files as Python, so
we statically force the language to Python.

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

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...

3b7158ef 08/18/2010 02:21 pm Michael Hanselmann

RAPI client: Support modifying instances

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

3882937a 08/18/2010 02:21 pm Michael Hanselmann

RAPI: Allow modifying instance

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

dd0fa69d 08/18/2010 02:21 pm Michael Hanselmann

Small fixes for instance creation via RAPI documentation

- Inconsistencies
- Missing types

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

f99010b2 08/18/2010 02:21 pm Michael Hanselmann

gnt-debug: Extend job queue tests

Test multiple opcodes, also with failure.

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

963a068b 08/18/2010 02:21 pm Michael Hanselmann

jqueue: Mark opcodes following failed ones as failed, too

When an opcode fails, the job queue would leave following opcodes as “queued”,
which can be quite confusing. With this patch, they're all marked as failed and
assertions are added to check this.

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

6ea72e43 08/18/2010 02:21 pm Michael Hanselmann

jqueue: Work around race condition between job processing and archival

This is a simplified version of a patch I sent earlier to make sure the job
file is only written once with a finalized status.

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

dc1e2262 08/17/2010 04:53 pm Michael Hanselmann

jqueue: More checks for cancelling queued job

We can also check when the lock status is updated. This will
improve job cancelling.

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

84f790e6 08/17/2010 04:34 pm Michael Hanselmann

errors: Function to check whether value is encoded error

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

e35344b4 08/17/2010 04:25 pm Michael Hanselmann

jqueue: Add more debug output

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

5ec4b9d2 08/17/2010 04:25 pm Michael Hanselmann

gnt-backup: Pass error code to OpPrereqError

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

07783cde 08/17/2010 03:44 pm Iustin Pop

Merge branch 'devel-2.1'

  • devel-2.1:
    Fix path in ganeti-rapi man page
    Adjust message in case ~/.ssh is no directory

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

46d2d8a2 08/17/2010 03:36 pm Iustin Pop

Re-add the 'live' parameter to migration opcodes

This patch reintroduces the live parameter, for backwards compatibility
at the Luxi level. This way, clients can work transparently with both
2.1 and 2.2, even though sub-optimally.

Signed-off-by: Iustin Pop <>...

e538a046 08/17/2010 03:04 pm Guido Trotter

Fix --master-netdev arg name in gnt-cluster(8)

This fixes Issue 114.

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

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 <>...

77a2f6f4 08/17/2010 03:04 pm Guido Trotter

Document the usb_mouse hv parameter

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

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 <>

215e40a9 08/16/2010 05:06 pm Michael Hanselmann

Fix path in ganeti-rapi man page

This takes care of issue 116.

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

46d0a3d0 08/13/2010 08:25 pm Michael Hanselmann

workerpool: Don't keep reference to task arguments

The workerpool should not keep any reference to task arguments after
they were processed by RunTask. Doing so led to jobs being cached
by the job queue's WeakValueDictionary for longer than they should've...

5d297d8a 08/13/2010 08:25 pm Michael Hanselmann

cli.SubmitOpCode: Pass keyword parameter as keyword

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Manuel Franceschini <>

bc696589 08/10/2010 07:35 pm Michael Hanselmann

gnt-backup: Don't show confusing message w/o target node

“gnt-backup export” requires the target node. Until now, the master
daemon would complain that the “parameter
'OP_BACKUP_EXPORT.target_node' fails validation”. With this patch,
an additional check is done in the client program....

85b3901b 08/10/2010 07:35 pm Michael Hanselmann

masterd.instance: Add missing argument

_DiskTransferPrivate takes three parameters, not two.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Manuel Franceschini <>

898a6d45 08/10/2010 07:05 pm Michael Hanselmann

Adjust message in case ~/.ssh is no directory

Use actual path, not something hardcoded.

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

c63eb9c0 08/10/2010 06:56 pm Michael Hanselmann

RAPI client: Fix docstring for migrating instance

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

7fb50870 08/10/2010 06:56 pm Michael Hanselmann

QA: Test renaming instance via RAPI

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

d654aae1 08/10/2010 06:56 pm Michael Hanselmann

RAPI client: Support renaming instances

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

d56e7dc7 08/10/2010 06:55 pm Michael Hanselmann

Allow renaming instances via RAPI

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

a5eba783 08/10/2010 06:55 pm Michael Hanselmann

RAPI client: Don't re-use PycURL object

With this patch, a new PycURL object will be created for each request.
This should make the RAPI client safe for simultaneous calls from
multiple threads. Unittests are adjusted accordingly.

An unnecessary variable assignment is also removed from the unittest...

94e9e1e9 08/09/2010 07:09 pm Manuel Franceschini

Add --no-name-check to 'gnt-instance rename' man page

Signed-off-by: Manuel Franceschini <>
Reviewed-by: Michael Hanselmann <>

fcee765d 08/05/2010 08:37 pm Manuel Franceschini

Fix bug in bdev when drbd version format is x.x.x.x

This patch fixes a bug reported in [0]. Newer drbd versions can have
another digit beyond the regular major, minor and point release digits.
We modify the regex used to match that with an optional parts which is...

41c44dcf 07/30/2010 10:59 pm Iustin Pop

Bump version to 2.2.0~rc0

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

40edb0cc 07/30/2010 06:33 pm Michael Hanselmann

move-instance: Use constants for parameters

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

cc87d736 07/30/2010 06:33 pm Michael Hanselmann

Allow instance NIC's IP address to be None

Also add some assertions.

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

405241dc 07/30/2010 06:33 pm Michael Hanselmann

Test instance NIC and disk parameter names

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

59525e1f 07/30/2010 06:33 pm Michael Hanselmann

Add new parameter type “maybe string”

Before strict checking was implemented, NIC IP addresses could be set
to “None”. Commit bd061c35 added more strict checking, including
enforcing the IP address to be a string. With this new type, it
can again be set to None....

71ca6309 07/30/2010 06:32 pm Michael Hanselmann

cmdlib: Change expected type for source CA on remote import

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

a59b0dc4 07/30/2010 06:32 pm Michael Hanselmann

move-instance: Pass OS parameters to new instance

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

529a8d17 07/30/2010 06:21 pm Iustin Pop

Update NEWS file for the first release candidate

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

aa9f8167 07/30/2010 04:43 am Iustin Pop

Fix a few job archival issues

This patch fixes two issues with job archival. First, the
LoadJobFromDisk can return 'None' for no-such-job, and we shouldn't add
None to the job list; we can't anyway, as this raises an exception:

node1# gnt-job archive foo...
78bb78b1 07/30/2010 02:10 am Iustin Pop

burning: fix handling of empty job sets

If we call burning with only existing instance, then it will fail to
create any of them, and thus in the removal phase it won't have anything
to remove. Since calling luxi.SUBMIT_MULTIPLE_JOBS with an empty job set...

297ddce9 07/30/2010 02:09 am Iustin Pop

Change semantics of --force-multi for reinstall

Currently, we require both --force and --force-multiple for skipping the
confirmation on instance reinstalls. After offline conversations, this
has been deemed to be excessive, and this patch changes the meaning of...

599ee321 07/30/2010 12:52 am Iustin Pop

Change handling of non-Ganeti errors in jqueue

Currently, if a job execution raises a Ganeti-specific error (i.e.
subclass of GenericError), then we encode it as (error class, [error
args]). This matches the RAPI documentation.

However, if we get a non-Ganeti error, then we encode it as simply...

4404ffad 07/30/2010 12:52 am Iustin Pop

Implement gnt-cluster master-ping

This can be used from shell-scripts to quickly check the status of the
master node, before launching a series of jobs (and handling the failure
of the jobs due to masterd other issues).

Signed-off-by: Iustin Pop <>...

b8ebd37b 07/29/2010 11:02 pm Iustin Pop

Instance migration: remove error on missing link

Since we don't support upgrades from 1.2.4 without restarting the
instance, the 'not restarted since 1.2.5' check/error is
wrong/misleading.

Since the live migration works anyway without the links (it recreates...

2c0be3d0 07/29/2010 08:50 pm Michael Hanselmann

Add check for RAPI paths to start with /2

During a discussion in July 2010 it was decided that we'll stabilize on /2. See
message ID <> for reference.

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

a9b144cb 07/29/2010 04:48 pm Michael Hanselmann

Ensure assertions are evaluated in tests

A lot of assertions are used in Ganeti's code. Some unittests even check
whether AssertionError is raised in some cases. Explicitely ensuring
assertions are evaluated makes sure those tests don't fail and
assertions are checked....

fcee9675 07/29/2010 04:05 pm David Knowles

RAPI client: The os argument for instance reinstalls is optional

Signed-off-by: David Knowles <>
Reviewed-by: Michael Hanselmann <>

e0ac6ce6 07/29/2010 04:05 pm Michael Hanselmann

RAPI client: Support migrating instances

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

938bde86 07/29/2010 04:05 pm Michael Hanselmann

QA: Test instance migration via CLI and RAPI

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

c1cf1fe5 07/29/2010 04:05 pm Michael Hanselmann

workerpool: Add two additional assertions

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

b2e8a4d9 07/29/2010 04:05 pm Michael Hanselmann

workerpool: Change signature of AddTask function to not use *args

By changing it to a normal parameter, which must be a sequence, we can
start using keyword parameters.

Before this patch all arguments to “AddTask(self, *args)” were passed as
arguments to the worker's “RunTask” method. Priorities, which should be...

5823e0d2 07/29/2010 04:05 pm Michael Hanselmann

RAPI: Support migrating instances

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

21c5ad52 07/29/2010 04:05 pm Michael Hanselmann

workerpool: Move waiting for new tasks for a worker to the pool

This way fewer private variables of the pool are accesssed by the worker.

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

ccedb11b 07/29/2010 04:05 pm Michael Hanselmann

workerpool: Remove unused worker method

HasRunningTask is never used except for an assertion, where we
don't really need the lock.

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

2f4e1516 07/29/2010 04:05 pm Michael Hanselmann

workerpool: Additional check in BaseWorker.ShouldTerminate

Document that it should only be called from within RunTask and
add an assertion for this. This means we can no longer use a
method on the pool and hence remove WorkerPool.ShouldWorkerTerminate.

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

189d2714 07/29/2010 04:05 pm Michael Hanselmann

workerpool: Use common function to add tasks

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

92c1ea55 07/29/2010 04:02 pm Iustin Pop

Fix install document regarding DRBD usage

This is related to issue 105.

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

b430a54d 07/29/2010 04:02 pm Iustin Pop

Update RAPI documentation for the OS changes

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

c28502b1 07/28/2010 11:37 pm Iustin Pop

Rename masterfailover to master-failover

Most (all?) of our commands use dash-separator: replace-disks,
verify-disks, add-tags, etc. “gnt-cluster masterfailover” is an old
exception to this rule.

The patch replaces it with master-failover, add a compatiblity alias,...

130f0966 07/28/2010 11:27 pm Iustin Pop

RAPI: Add os params to instance creation v1

Since the RAPI QA suite doesn't seem to offer easy testing of failed
creations, I didn't add this to the QA. Pointers on how to do it are
welcome.

The patch also changes the 'os' argument to be required, since that is...

74fa8200 07/28/2010 11:19 pm Iustin Pop

makefile: fix TAGS building

“find .” requires that “-path” arguments start with a dot, otherwise
they are not matches. Additionally, we also include the QA files in the
tags, for easier search while modifying the QA suite.

Signed-off-by: Iustin Pop <>...

91c622a8 07/28/2010 11:19 pm Iustin Pop

Improve handling of lost jobs

Currently, if the cli.JobExecutor class is being used, and one of the
jobs is being archived before it can check its result, it will raise a
stracktrace as _ChooseJob is not prepared to handle this case.

This case makes JobExecutor work better with lost jobs (it still reports...

5a1c22fe 07/28/2010 08:16 pm Iustin Pop

luxi: convert permission errors into exception

This patch adds handling of permission errors so that we don't show
tracebacks when a non-root user runs a gnt-* command. Since in the
future we'll have different permissions, we need to handle this in RAPI
too....

6a016df9 07/28/2010 07:10 pm Michael Hanselmann

cmdlib: Return new name from rename operations

The new name is then displayed by the clients.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Manuel Franceschini <>

3fe11ba3 07/28/2010 06:40 pm Manuel Franceschini

gnt-instance rename: Fix bug and rename params

This patch fixes a bug when gnt-instance rename was invoked with
--no-name-check. It renames the internal variables to be consistent with
the ones in equivalent instance add code. Furthermore it checks whether...

452913ed 07/26/2010 05:55 pm Iustin Pop

QA: add tests for the reserved lvs feature

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

f38ea602 07/26/2010 05:55 pm Iustin Pop

Add modification of the reserved logical volumes

This doesn't allow addition/removal of individual volumes, only
wholesale replace of the entire list. It can be improved later, if we
ever get generic container parameters.

The man page changes replaces some tabs with spaces (hence the...

5a3ab484 07/26/2010 05:54 pm Iustin Pop

Add printing of reserved_lvs in cluster info

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

999b183c 07/26/2010 05:54 pm Iustin Pop

Introuce a new cluster parameter - reserved_lvs

This parameter, which is a list of regular expression patterns, will
make cluster verify ignore any such LVs. It will not prevent creation or
removal of such volumes by the backend code.

Signed-off-by: Iustin Pop <>...

91492e57 07/26/2010 05:50 pm Iustin Pop

Change the meaning of call_node_start_master

Currently, backend.StartMaster (the function behind this RPC call) will
activate the master IP and then, if the start_daemons parameter is true,
it will also activate the master role.

While this works, it has two issues:...

340f4757 07/26/2010 05:49 pm Iustin Pop

masterd: move the IP activation from Exec to Check

Currently, the master IP activation is done in the Exec function. Since
the original masterd process returns after forking, and Exec is run in
the (grand)child process, this means that after 'ganeti-masterd' has...

e0e916fe 07/26/2010 05:45 pm Iustin Pop

Move the UsesRPC decorator from cli to rpc

This is needed because not just the cli scripts need this decorator, but
the master daemon too (and it already duplicated the code once).

In cli.py we just leave a stub, so that we don't have to modify all the
scripts to import rpc.py....

f5116c87 07/26/2010 05:09 pm Iustin Pop

watcher: smarter handling of instance records

This patch implements a few changes to the instance handling. First, old
instances which no longer exist on the cluster are removed from the
state file, to keep things clean.

Second, the instance restart counters are reset every 8 hours, since...

52194140 07/23/2010 08:26 pm Iustin Pop

Update the RAPI node migrate for the 'live' change

This patch adds handling of the new 'mode' parameter to the RAPI server,
while keeping compatibility with the old mode. Note that in the old mode
(when 'live' is being passed), the auto-mode doesn't work....

1f334d96 07/23/2010 08:26 pm Iustin Pop

Update the RAPI client for the migration mode

See the discussion on the previous patch about this. Basically unless we
want to a add a new 'feature' marking for the live migration parameter,
there is no simple way to handle this nicely in the client.

Given that the client was/is marked as experimental, this patch simply...

f907fcf2 07/23/2010 08:26 pm Iustin Pop

Fix burnin and live migration

This is breakage from the original 'live' parameter changes.

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

8c35561f 07/23/2010 08:26 pm Iustin Pop

Rename the OpMigrate* parameter 'live' to 'mode'

This is needed as now the parameter is no longer boolean, but tri-state.

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