Statistics
| Branch: | Tag: | Revision:

root / lib / mcpu.py @ 45f62156

History | View | Annotate | Download (26.1 kB)

# Date Author Comment
108c0a3e 12/21/2012 10:26 pm Iustin Pop

Merge branch 'devel-2.6'

  • devel-2.6:
    Final update of NEWS file for 2.6.2 and version bump
    Fix job completion with big job queues
    confd: reduce noise during normal config reload
    Change hbal handling of !auto_balance instances
    Small corrections in man pages...
b8028dcf 12/19/2012 06:29 pm Michael Hanselmann

Replace frozenset with compat.UniqueFrozenset

This is not a trivial s/frozenset/compat.UniqueFrozenset/, but rather
only replaces “frozenset” where appropriate. Most of the places are
“static” information that doesn't change after the module has been
loaded....

80b207df 12/13/2012 05:36 pm Iustin Pop

Stop verifying opcode results in dry_run mode

Commit 1ce03fb1 (“Add ht-based result checks to opcodes”) introduced
infrastructure for checking opcode results, and subsequent commits
improved the list of opcodes which do declare a result, however this
was not tested for dry-run mode operation....

e9a81214 12/07/2012 02:35 pm Michael Hanselmann

mcpu: Verify node allocation lock mode

Add verification code to mcpu to check an LU's locks. Two whitelists are
provided to exclude LUs from the two tests.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Bernardo Dal Seno <>

686d24f0 12/03/2012 03:56 pm Michael Hanselmann

Support opportunistic locks in mcpu/LUs

Similar to “share_locks”, a new dictionary containing booleans for each
locking level is added to “cmdlib.LogicalUnit”. Logical units wanting to
make use of opportunistic locks will be able to configure this
dictionary accordingly....

46cde471 11/26/2012 12:00 pm Michael Hanselmann

mcpu: Start locking at correct level

Commit 8716b1d added a new lock level, LEVEL_NODE_ALLOC. It is ahead of
LEVEL_INSTANCE. The latter was hardcoded in mcpu to be locked right
after the BGL, effectively ignoring LEVEL_NODE_ALLOC.

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

e4e59de8 11/08/2012 04:40 pm Michael Hanselmann

jqueue/mcpu: Determine priority using callback

Instead of being given the priority for acquiring locks by means of a
parameter, mcpu will now call back. This is in preparation for
implementing a command to change a job's priority on the fly and allows
to change it while locks are being acquired (taking effect on the next...

8e09e801 11/01/2012 07:44 pm Michael Hanselmann

Merge branch 'devel-2.6'

  • devel-2.6:
    Fix typo in gnt-instance man page
    jqueue: Return jobs to queue when shutting down
    gnt-debug delay: Add "--submit" option
    Make hostname checks uniform between instance rename and add
    Improve logging of new job submissions...
a9d40c65 11/01/2012 03:00 pm Iustin Pop

Improve handling of lock exceptions

There are two issues with lock exceptions right now:

- first, we don't log the original error; this is fine for now
(locking.py always returns the same error here), but in general is
brittle: if locking.py would start returning more information, we'd...

b183c4a8 10/23/2012 07:09 pm Iustin Pop

Improve logging of AssertionErrors

Currently, when we have an assertion error raised from cmdlib, it looks like this:

[cluster] root@node4:~# gnt-instance grow-disk instance1 0 1G
Failure: command execution error:

This is very very confusing. This patch adds a bit of traceback...

b3a6f851 09/18/2012 06:09 pm Michael Hanselmann

Migrate lib/mcpu.py from constants to pathutils

File system paths moved from constants to pathutils.

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

5ae4945a 08/23/2012 02:41 pm Iustin Pop

Bump pep8 version to 1.2

Debian Wheezy will ship with this version, and it has many improved checks compared to 0.6, so let's:

- bump version in the docs
- silence some new checks that are wrong due to our indent=2 instead of 4
- fix lots of errors in the code where the indentation was wrong by 1...

dc4bdf73 04/20/2012 07:11 pm Michael Hanselmann

Stop acquiring BGL for LUXI queries

Short description: This fixes an issue whereby masterd would become
unresponsive on the LUXI socket, leading to client timeouts. While made
worse in 2.5, the underlying issue was already present in 2.4.

Longer description: Until now all LUXI queries would acquire the BGL...

abe362d3 04/18/2012 01:20 pm Michael Hanselmann

Fix error in opcode result processing

LUXI queries are processed without callbacks (see
server.masterd.ClientOps._Query). With commit 07923a3c the logic for
checking an opcode's result for jobs to submit was changed and
subsequently raised an exception (“'NoneType' object has no attribute...

07923a3c 04/16/2012 07:30 pm Michael Hanselmann

Copy debug level, priority and set comment for LU-generated opcodes

Before this patch, a node evacuation submitted with high priority would
only compute the solution at that priority, but the actual evacuation
ran at normal priority.

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

5401c39d 02/17/2012 05:39 pm Michael Hanselmann

utils.text: Add function to truncate string

The function adds an ellipse if the string was actually truncated. Also
start using it in mcpu for result checks (where the message is also
slightly changed to use a colon).

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

ee938820 02/17/2012 10:59 am René Nussbaumer

mcpu: Make the op result exception more verbose

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

0e82dcf9 11/18/2011 01:48 pm Andrea Spadaccini

Merge branch 'devel-2.5'

  • devel-2.5: (24 commits)
    LUInstanceCreate: Release unused node locks
    htools: rework message display construction
    hbal: handle empty node groups
    Document OpNodeMigrate's result for RAPI
    Ensure unused ports return to the free port pool...
fe5ca2bb 11/02/2011 12:46 pm Andrea Spadaccini

Move hooks PATH environment variable to constants

Move the contents of the PATH environment variable for hooks to
constants, and use its value in the code and in the hooks documentation.

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

da124e89 11/01/2011 09:07 pm Andrea Spadaccini

Generalize HooksMaster

- remove any dependence on Logical Units from the HooksMaster;
- add a new function parameter to the constructor, a function that is
expected to convert the results of the hooks execution in a format
understood by the HooksMaster;...

949dcb1d 11/01/2011 08:37 pm Andrea Spadaccini

Generalize HooksMaster

- remove any dependence on Logical Units from the HooksMaster;
- add a new function parameter to the constructor, a function that is
expected to convert the results of the hooks execution in a format
understood by the HooksMaster;...

7dcf333d 10/31/2011 05:54 pm Michael Hanselmann

Merge branch 'devel-2.5'

  • devel-2.5:
    Fix wrong headers and licences
    Update NEWS and increase to 2.4.5
    Fix parameters of RpcResult in hooks unit tests
    Fix a too long line.
    Move RenameFile to the new functions
    ensure_dirs: Move some useful functions into utils....
af5af644 10/25/2011 05:05 pm Andrea Spadaccini

Use JoinDisjointDicts in mcpu

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

87b3cb26 09/27/2011 02:47 pm Michael Hanselmann

Keep only one global RPC runner in Ganeti context

Instead of having one RPC runner per mcpu processor this will keep only
one instance as part of the masterd-wide Ganeti context. Upcoming
patches will change the RPC runner to report pending requests to the...

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

c7bb3095 08/12/2011 12:01 pm Michael Hanselmann

mcpu: Specify actual received type on opcode issue

This helped me debug an issue with opcodes.

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

1ce03fb1 07/26/2011 02:19 pm Michael Hanselmann

Add ht-based result checks to opcodes

This adds the infrastructure necessary to check opcode results using
ht-based functions. Checks are added for two opcodes.

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

eb279644 05/19/2011 02:01 pm Michael Hanselmann

mcpu: Add missing docstring to _ProcessResult

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

0d5a0b96 05/10/2011 02:03 pm Michael Hanselmann

cmdlib: Remove acquired_locks attribute from LUs

The “acquired_locks” attribute in LUs is used to keep a list of acquired
locks at each lock level. This information is already known in the lock
manager, which also happens to be the authoritative source. Removing the...

af7b6689 04/07/2011 01:24 pm Michael Hanselmann

Merge branch 'devel-2.4'

  • devel-2.4:
    LUInstanceQueryData: Don't acquire locks unless requested
    Increase the lock timeouts before we block-acquire
    daemon.py: move startup log message before prep_fn
    Display the actual memory values in N+1 failures...
d385a174 04/06/2011 03:49 pm Iustin Pop

Increase the lock timeouts before we block-acquire

This has been observed to cause problems on real clusters via the
following mechanism:

- a long job (e.g. a replace-disks) is keeping an exclusive lock on an
instance
- the watcher starts and submits its query instances opcode which...

6a373640 03/25/2011 03:53 pm Michael Hanselmann

Implement submitting jobs from logical units

The design details can be seen in the design document
(doc/design-lu-generated-jobs.rst).

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

07e0896f 03/18/2011 04:53 pm Michael Hanselmann

Split BuildHooksEnv of LUs

Commit dd7f677623 added another call to BuildHooksEnv to provide
post-phase status variables. Since BuildHooksEnv also built the node
lists, that meant they have to be built twice. First a rather strict
check was used, but it turned out to be more tricky. Commit b423c51336...

b423c513 03/17/2011 06:43 pm Michael Hanselmann

Remove restrictive hook node list check

Commit dd7f67762 added a restrictive check for the node lists returned
by BuildHooksEnv, leading to errors with some LUs, one of which was
fixed in commit 0dfa2c227. As it turns out, other LUs have similar
issues, some not easy to fix. This patch disables the restrictive check...

ebc75510 03/16/2011 07:58 pm Michael Hanselmann

HooksMaster: Add more assertions for variable names

Also replace explicit loop with dict.update.

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

dd7f6776 03/16/2011 07:58 pm Michael Hanselmann

hooks: Provide variables with post-opcode values

When a hook is called, it is provided with a number of variables
describing the status of the instance/node/etc. before the operation.
Some opcodes provide extra variables to see modified values from hooks,...

0306ff62 03/16/2011 07:58 pm Michael Hanselmann

mcpu: Tidy HooksMaster a bit

- Dictionary indentation
- Add empty lines for readability
- Simplify conditional code

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

3ae70d76 02/28/2011 08:40 pm Michael Hanselmann

Fix LU processor's GetECId

The exception was never actually raised.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Adeodato Simo <>

a1a7bc78 01/10/2011 02:42 pm Iustin Pop

mcpu: Automatically build the DISPATCH_TABLE

While reviewing dato's interdiff for the OpAssignGroupNodes, I
realised that we can do better. This patch replaces the hand-built
DISPATCH_TABLE with one built from the opcode.OP_MAPPING dict.

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

792af3ad 12/15/2010 05:35 pm René Nussbaumer

Rename (Op|LU)OutOfBand to (Op|LU)OobCommand

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

4da7909a 12/13/2010 06:33 pm Adeodato Simo

Add modification of node groups (OpCode/LU/CLI)

With this commit, only modification of the "ndparams" attribute is
supported.

Signed-off-by: Adeodato Simo <>
Reviewed-by: Guido Trotter <>

4fe5cf90 12/08/2010 02:27 pm Adeodato Simo

Group operations: OpCode and LU for renaming a group

Signed-off-by: Adeodato Simo <>
Reviewed-by: Michael Hanselmann <>

94bd652a 12/08/2010 02:27 pm Adeodato Simo

Group operations: OpCode and LU for removing a group

Signed-off-by: Adeodato Simo <>
Reviewed-by: Michael Hanselmann <>

b1ee5610 12/08/2010 02:27 pm Adeodato Simo

Group operations: OpCode and LU for adding a group

Signed-off-by: Adeodato Simo <>
Reviewed-by: Michael Hanselmann <>

eb64da59 12/07/2010 04:51 pm René Nussbaumer

Adding new OpCode for OOB

Register OpCode and Logical Unit in mcpu.py

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

70a6a926 12/01/2010 09:31 pm Adeodato Simo

Querying node groups: LU/Opcode

This adds opcodes.OpQueryGroups and cmdlib.LUQueryGroups.

Signed-off-by: Adeodato Simo <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

83f72637 11/29/2010 10:00 pm Michael Hanselmann

Add OpQuery opcode

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

557838c1 11/16/2010 05:19 pm René Nussbaumer

Move locking.RunningTimeout to utils

As we need this functionality in other places than just locking it makes
sense to move it to utils rather than keeping it in locking

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

900df6cd 10/12/2010 03:48 pm Michael Hanselmann

mcpu: Raise directly in _AcquireLocks

Removes code duplication.

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

f879a9c7 09/24/2010 06:18 pm Michael Hanselmann

mcpu: Implement priority for lock acquiring

Until now the priority for lock acquires couldn't be passed
when running opcodes.

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

a7770f03 09/23/2010 04:06 pm Michael Hanselmann

mcpu: Adjust lock acquire strategy

The changes to job queue processing require some changes on this class'
interface. LockAttemptTimeoutStrategy might move to another place, but that'll
be done in a later patch.

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

831bbbc1 09/23/2010 04:06 pm Michael Hanselmann

mcpu.Processor: Raise exception on lock acquire timeout

Right now the timeout is not passed by any caller, making the code
effectively go back to blocking acquires. Since the timeout is always
None, no caller needs to be changed in this patch.

This change also means that any LUXI query handled by ganeti-masterd...

acf931b7 09/13/2010 05:46 pm Michael Hanselmann

Remove mcpu's ReportLocks callback

This is no longer needed with the new lock monitor. One callback is kept to
check for cancelled jobs.

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

e58f87a9 07/15/2010 07:27 pm Michael Hanselmann

Add test for some aspects of job queue

This new opcode and gnt-debug sub-command test some aspects of the
job queue, including the status of a job. The bug fixed in commit
2034c70d507 was identified using this test. A future patch will
run this test automatically from the QA scripts....

7b4c1cb9 07/12/2010 05:32 pm Michael Hanselmann

Provide feedback function for all LU methods

By exposing mcpu's _Feedback function (now renamed to “Log”) to LU's,
methods like ExpandNames can also write to the job execution log.

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

8de1f1ee 06/23/2010 07:23 pm Iustin Pop

Remove the obsolete EvacuateNode OpCode/LU

All code has been switched to the new-style LU… time for cleanup.

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

1410fa8d 05/18/2010 06:53 pm Michael Hanselmann

Add opcode to prepare export

To prepare a remote export, the X509 key and certificate need to be generated.
A handshake value is also returned for an easier check whether both clusters
share the same cluster domain secret.

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

f7e7689f 02/22/2010 02:50 pm Iustin Pop

Add LUNodeEvacuationStrategy

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

4776e022 01/13/2010 03:02 pm Michael Hanselmann

mcpu: Log lock status with sorted names

Reading and comparing sorted lists is easier when debugging locking problems.

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

7260cfbe 01/04/2010 11:15 am Iustin Pop

Add targeted pylint disables

This patch should have only:

- pylint disables
- docstring changes
- whitespace changes

Signed-off-by: Iustin Pop <>
Reviewed-by: Olivier Tharan <>

1122eb25 01/04/2010 11:10 am Iustin Pop

Remove many 'Unused variable' warnings

Note there are some cases left which need extra cleanup.

Signed-off-by: Iustin Pop <>
Reviewed-by: Olivier Tharan <>

adfa97e3 11/06/2009 04:08 pm Guido Trotter

Processor: support a unique execution id

When the processor is executing a job, it can export the execution id to
its callers. This is not supported for Queries, as they're not executed
in a job.

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

73064714 11/06/2009 04:08 pm Guido Trotter

Add config.DropECReservations

For now this function does nothing, but it gets called by mcpu when the
execution of an LU is done, making sure any pending reservations are
dropped.

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

debac808 11/02/2009 04:14 pm Iustin Pop

Convert the rest of the OpPrereqError users

This finishes the conversion of OpPrereqError creation to two-argument
style. Any leftovers as one-argument are not breaking anything, just
losing information about the errors.

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

a6db1af2 10/15/2009 05:47 pm Michael Hanselmann

mcpu: Use new timeout class for timeout

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

b6b87034 10/15/2009 05:47 pm Michael Hanselmann

locking, mcpu: Ensure timeout is always >= 0.0

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

6f14fc27 10/13/2009 08:08 pm Michael Hanselmann

mcpu: Make sure added locks are released on errors

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

e3200b18 10/12/2009 01:48 pm Michael Hanselmann

mcpu: Change lock attempt timeout calculation

With this patch all timeouts are pre-calculated. The interface of
the _LockTimeoutStrategy class is also changed a bit; NextAttempt
now returns a new instance.

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

69b99987 10/12/2009 01:48 pm Michael Hanselmann

Code and docstring style fixes

Found using pylint and epydoc.

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

211b6132 10/12/2009 01:47 pm Michael Hanselmann

mcpu: Improve lock reporting with timeouts

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

407339d0 10/12/2009 01:47 pm Michael Hanselmann

mcpu: Implement lock timeouts

The timeout is always between ~0.1 and ~10.0 seconds. A small
variation of ±5% is added to prevent different jobs from
fighting each other. After 10 attempts to acquire the locks with
a timeout, a blocking acquire is made.

Lock status reporting will be improved in a separate patch....

6b95b76d 10/12/2009 01:47 pm Michael Hanselmann

mcpu: Remove unused exclusive_BGL attribute

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

3cebe102 09/17/2009 06:53 pm Michael Hanselmann

Remove RpcResult.RemoteFailMsg completely

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

ef2df7d3 09/15/2009 02:19 pm Michael Hanselmann

Keep lock status with every job

This can be useful for debugging locking problems.

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

031a3e57 09/15/2009 02:19 pm Michael Hanselmann

Move OpCode processor callbacks into separate class

There are two major arguments for this:
- There will be more callbacks (e.g. for lock debugging) and extending the
parameter list is a lot of work.
- In the jqueue module this allows us to keep per-job or per-opcode variables in...

640b961e 09/09/2009 12:46 pm Luca Bigliardi

mcpu: formatting/indenting fix

Small fix for a mistake done by bad editor settings.

Signed-off-by: Luca Bigliardi <>

d763bed0 08/25/2009 06:17 pm Luca Bigliardi

HooksMaster: fix RunPhase logging

In case of complete failure results is empty, return immediately
(tnx unittests).

Signed-off-by: Luca Bigliardi <>
Reviewed-by: Iustin Pop <>

8c4b9364 08/25/2009 05:39 pm Luca Bigliardi

HooksMaster: logging hooks in RunPhase

Extend RunPhase so it will log hooks results in POST phase.

Signed-off-by: Luca Bigliardi <>
Reviewed-by: Iustin Pop <>

cd46f3b4 08/25/2009 02:40 pm Luca Bigliardi

node-remove post on removed node

Run post phase of node-remove on the removed node as well.

Signed-off-by: Luca Bigliardi <>
Reviewed-by: Iustin Pop <>

6ef2dc74 08/25/2009 01:38 pm Luca Bigliardi

HooksMaster: document raised exception

HooksAbort is raised, but not documented.

Signed-off-by: Luca Bigliardi <>
Reviewed-by: Iustin Pop <>

17e82923 08/24/2009 08:32 pm Luca Bigliardi

HooksMaster: list of nodes override

Allow the caller of HooksMaster.RunPhase() to specify an alternative list of
nodes.

Signed-off-by: Luca Bigliardi <>
Reviewed-by: Iustin Pop <>

313bcead 08/24/2009 03:13 pm Iustin Pop

Add OPMoveInstance and LUMoveInstance

This patch adds a basic version of LUMoveInstance. It doesn't yet
support iallocator-mode and it's implemented in old-style (non-TL) mode.

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

4b5e8271 08/24/2009 03:11 pm Iustin Pop

Remove extra argument from HooksMaster class

The mcpu.py:HooksMaster class needs to have a proc attribute/argument to
init in ordet to call its LogWarning method. However, this is available
from the 'lu' attribute, so we can remove this dependency.

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

76aef8fc 08/17/2009 02:26 pm Michael Hanselmann

Add opcode to repair storage volumes

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

bd315bfa 08/14/2009 04:00 pm Iustin Pop

Implement instance recreate-disks

This can be used for a 'plain' type instance when the underlying storage
went away, to recreate the storage (and reinstall) instead of removing
the instance and readding it.

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

b142ef15 08/13/2009 02:41 pm Iustin Pop

Merge commit 'origin/next' into branch-2.1

  • commit 'origin/next': (28 commits)
    Fix a typo in InitCluster
    Ignore results from drained nodes in iallocator
    Ship the ethers hook
    Ethers hook, compatibility with old lockfile
    Remove a few unused imports from noded/masterd...
b5f5fae9 08/10/2009 03:23 pm Luca Bigliardi

Post cluster initialization LU

Add an 'empty' logical unit to run hooks after cluster initialization.

Signed-off-by: Luca Bigliardi <>
Reviewed-by: Iustin Pop <>

8486ffc0 08/07/2009 02:22 pm Guido Trotter

Merge branch 'master' into next

  • master:
    Update NEWS and version for 2.0.3 release
    devel/upload: revert rsync -p
    export: add meaningful exit code
    Fix detecting of errors in export
    Implement gnt-cluster check-disk-sizes
    rpc: add rpc call for getting disk size...
60975797 08/04/2009 05:36 pm Iustin Pop

Implement gnt-cluster check-disk-sizes

This patch adds a new opcode and lu for checking disk sizes. Currently
it does only top-level disk verification, and also doesn't check
primary/secondary node size mismatches (these two are added as TODOs in
the Exec() function of the LU)....

efb8da02 08/04/2009 12:44 pm Michael Hanselmann

cmdlib: Add opcode to modify storage unit fields

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

9e5442ce 08/03/2009 04:42 pm Michael Hanselmann

Add new opcode to list physical volumes

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

80cb875c 07/31/2009 02:30 pm Michael Hanselmann

cmdlib: Add new opcode to migrate node

It migrates all primary instances from the node to their secondaries.

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

7ffc5a86 07/22/2009 08:52 pm Michael Hanselmann

Add new opcode to evacuate nodes

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

2f7140ba 07/08/2009 12:28 pm Guido Trotter

Merge branch 'next' into branch-2.1

  • next:
    Create a new --no-voting option for masterfailover
    ganeti-masterd: allow non-interactive --no-voting
    Fix pylint warnings
    Add custom pylintrc
    bootstrap: Don't leak file descriptor when generating SSL certificate...
7c4d6c7b 07/07/2009 03:54 pm Michael Hanselmann

Fix pylint warnings

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

5bbd3f7f 07/07/2009 03:51 pm Michael Hanselmann

Fix some typos

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

20777413 06/19/2009 04:24 pm Iustin Pop

LU execution: implement dry-run framework

This patch adds a new (global) opcode flag 'dry_run' which, when True,
causes early exit from the LU workflow, returning a special value from
the LU object (initialized in the parent LogicalUnit class, and which if...

29921401 06/18/2009 01:49 pm Iustin Pop

Fix various pylint warnings

There were multiple issues:
- copy-paste resulted in wrong indentation
- wrong function name
- missing spaces around assignment
- overriding built-in names (type, dir) or already defines ones
(errors, hypervisor)

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

3fb4f740 06/15/2009 08:08 pm Iustin Pop

Convert hooks_runner rpc to new style result

This also converts (and fixes) unittests and mock objects to deal with
this change, and the custom hook verifier in cmdlib.LUClusterVerify.

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

f5118ade 05/27/2009 01:19 pm Iustin Pop

Add a node powercycle command

This (somewhat big) patch adds support for remotely rebooting the nodes
via whatever support the hypervisor has for such a concept.

For KVM/fake (and containers in the future) this just uses sysrq plus a
‘reboot’ call if the sysrq method failed. For Xen, it first tries the...