| Branch: | Tag: | Revision:

root / lib / @ be9150ea

History | View | Annotate | Download (134.6 kB)

# Date Author Comment
be9150ea 06/28/2013 03:38 pm Bernardo Dal Seno

Limit the PVs used for disk growth with exclusive storage

The exclusive storage flag is passed along in the backend functions for
disk growth. LVM volumes handles the flag by reusing the same PVs, as disks
are constrained by the number of their spindles....

f5c4553b 06/18/2013 06:24 pm Michele Tartara

Merge branch 'stable-2.8' into 'master'

  • stable-2.8
    Version bump to 2.8.0~alpha1
    Make cfgupgrade idempotent
    Update config version number when downgrading
    Add test for shrink heuristics over different resources
    Improve hspace shrinking strategy...
32389d91 06/14/2013 02:43 pm Helga Velroyen

Refactor NodeInfo RPC regarding storage reporting

The NodeInfo RPC call is refactored to handle now more than
just storage reporting for volume groups.

Since NodeInfo now returns storage space information not
necessarily for volume groups, but also for other storage...

13669ecd 06/14/2013 02:43 pm Helga Velroyen

Integrate free space reporting for file storage

This patch integrates the free space reporting for file
storage. So far, it is only called, when the default
disk template is a file-based disk template ("file" or

Signed-off-by: Helga Velroyen <>...

0f0f6d7d 06/14/2013 02:42 pm Helga Velroyen

Add storage type to NodeInfo result

So far, the storage information returned from RPC call
NodeInfo contained only information about volume groups.
In order to extend the storage reporting to other storage
type, we include another field "type" in the result of...

1c3231aa 06/13/2013 12:32 pm Thomas Thrainer

Index nodes by their UUID

No longer index nodes by their name but by their UUID in the cluster
config. This change changes large parts of the code, as the following
adjustments were necessary: * Change the index key to UUID in the configuration and the
ConfigWriter, including all methods....

bc0a2284 06/13/2013 10:32 am Helga Velroyen

Add cluster name to instance migration RPC

This fixes a 'FIXME' in the xen hypervisor. The instance
migration requires the cluster's name. This should come
from the RPC call, but so far was hackishly taken from
ssconf. Ssconf is intended to be used by scripts only and...

8ef418bb 06/12/2013 10:18 am Helga Velroyen

Remove XEN_CMD from constants, adjust to PowercycleNode

This patch extend the RPC to powercycle a node by a
hvparams parameter. This parameter is used by the
xen hypervisor to determine which xen command to use.
The respective LU is adjusted as well.

Since this was the last operation depending on the...

0200a1af 06/12/2013 10:18 am Helga Velroyen

Use hvparams in GetAllInstancesInfo

This patch extends the GetAllInstancesInfo method of the
hypervisors by a hvparams parameter. This change propagates
up to the RPC call all_instances_info, which also needed
to be extended. All callers of this call were adjusted...

0bbec3af 06/12/2013 10:18 am Helga Velroyen

Use hvparams in GetInstanceInfo

This patch extends the GetInstanceInfo function of the
hypervisors by an hvparams parameters. This leads to
an extension of the instance_info RPC call and the
adjustmend of all classes using this call.

Signed-off-by: Helga Velroyen <>...

c6ae283b 06/12/2013 10:18 am Helga Velroyen remove fallback implementation of GetNodeInfo

This removes the fallback implementation of the backend's
GetNodeInfo function to the old implementation. By now,
all calling code is adjusted to the new hvparams parameter
and thus, the old implementation should not be necessary...

439e1d3f 06/12/2013 10:18 am Helga Velroyen use hvparams in GetNodeInfo

This patch extends the GetNodeInfo function of the backend
module by a hvparams parameter. For now, it contains a
fallback solution for when the parameter is None. This
fallback will be removed in a later patch of this series....

5b0dfcef 06/12/2013 10:17 am Helga Velroyen

Verify: node info and instance list

This patch enhances node verification by:
- Factoring out the verification of the node info
and the instance list to increase testability.
- Make both of them use the hvparams parameter.

Signed-off-by: Helga Velroyen <>...

75bf3149 06/12/2013 10:17 am Helga Velroyen

Verify: xen toolstack, hypervisor and hvparams

This patch extends the node verification by:
- Adding a check for the xen toolstack when the hypervisor
is verified.
- Factoring out the hypervisor verification in a
subfunction to increase testability.
- Factoring out the hvparams verification in a...

3361ab37 06/12/2013 10:17 am Helga Velroyen use instance's hvparams whenever possible

The backend module's function 'ListInstances' is called
within the module several times. In many cases, it is
possible to reuse the instance's hvparams for the
'ListInstances' call and thus avoiding having to extend...

2bff1928 06/12/2013 10:17 am Helga Velroyen GetInstanceListForHypervisor

In same cases, the call 'GetInstanceList' is only done for
one hypervisor. In those cases, it is more convenient to
not provide the full collection of hypervisor parameters
for all hypervisors, but only the ones for this hypervisor....

fac83f8a 06/12/2013 10:17 am Helga Velroyen hvparams in 'GetInstanceList'

Propagating the use of hvparams further up the calling
hierarchy, this patch makes the backend module use the
hvparams in 'GetInstanceList'. Unit tests provided.

Signed-off-by: Helga Velroyen <>...

a1860404 06/07/2013 04:10 pm Bernardo Dal Seno

node_info RPC reports info about free spindles

node_info RPC can be used to get information about free/total spindles.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Klaus Aehlig <>

8a348b15 06/04/2013 12:59 pm Christos Stavrakakis

Export device UUIDs to hooks and OS scripts

Export UUIDs and names of instance NICs and disks to the environment
of OS scripts and instance related hooks.

Signed-off-by: Christos Stavrakakis <>
Signed-off-by: Klaus Aehlig <>...

6ef8077e 05/28/2013 12:45 pm Bernardo Dal Seno

New RPC to get size and spindles of disks

This RPC replaces the existing one that only returned disk size.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Helga Velroyen <>

4b92e992 05/21/2013 03:13 pm Helga Velroyen

RPC 'node_info': <storage_type,key> instead of vg_names

This replaces the field 'vg_names' in the RPC call of 'node info' by
'storage_units'. A storage unit is a tuple <storage_type,key>
and a generalization of a vg_name. The list of vg names is replaced by...

cde49218 05/14/2013 04:46 pm Helga Velroyen

Rename dir 'block' to 'storage'

Renaming the 'block' directory to 'storage', because I plan to
place code there that is related to file storage and leaving
it named 'block' would be misleading.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Thomas Thrainer <>

47e0abee 05/06/2013 11:47 am Thomas Thrainer

Split DRBD8Dev into DRBD8 and DRBD8Dev

All functionality specific to a single DRBD8 devide is now in DRBD8Dev,
whereas functionality which is valid for the whole DRBD "installation"
on a device is collected in DRBD8.

This makes it possible to remove a couple of FIXME's and clarifies the...

239364d0 05/06/2013 11:30 am Thomas Thrainer

Rename DRBD8 to DRBD8Dev

Right now the DRBD8 class has multiple responsibilities: a) it
reprensents a device which can be set up, grown, etc. and b) it
represents the whole DRBD system on a node which has a usermode helper,
which knows how to shut down all devices, etc. Therefore, the DRBD8Dev...

5bb0a1cb 05/06/2013 11:30 am Thomas Thrainer

Make DRBD version queryable from noded

gnt-cluster verify should issue a warning if there are multiple DRBD
versions present in a node group. In order to do so, the DRBD version
has to be queryable from noded.

Signed-off-by: Thomas Thrainer <>...

5519f036 04/29/2013 11:13 pm Bernardo Dal Seno

Merge branch 'stable-2.8' into master

  • stable-2.8: (42 commits)
    Add shelltests for hspace allocation
    hspace: Handle multiple ipolicy specs
    QA: Test multiple instance specs
    QA: Handle multiple instance specs
    Unit test for cli.FormatPolicyInfo()...
2fe690f1 04/29/2013 07:05 pm Thomas Thrainer

Extract /proc/drbd parsing code into DRBD8Info

As the DRBD8 class got bigger due to the previous merge of BaseDRBD, now
parts of it are ripped out into DRBD8Info. This new class parses
/proc/drbd and exposes the information in an easily accessible way. This...

fd300bc7 04/29/2013 07:05 pm Thomas Thrainer

Remove BaseDRBD

BaseDRBD was probably useful when DRBD 0.7 and DRBD 8 were supported.
However, there is only one subclass of BaseDRBD remaining (DRBD8), and
the separation of responsibilities between those two classes was rather
randomly chosen.

The unification into one class also eases the introduction of...

95990bc5 04/24/2013 07:53 pm Klaus Aehlig

Merge branch 'stable-2.7' into stable-2.8


Signed-off-by: Klaus Aehlig <>
Reviewed-by: Guido Trotter <>

1fa6fcba 04/24/2013 02:44 pm Michele Tartara

Reason trail implementation for "start"

Opcode-specific implementation of the reason trail for the instance
startup operation.

Signed-off-by: Michele Tartara <>
Reviewed-by: Guido Trotter <>

1f350e0f 04/24/2013 02:44 pm Michele Tartara

Reason trail implementation for "shutdown"

Opcode-specific implementation of the reason trail for the instance shutdown

Signed-off-by: Michele Tartara <>
Reviewed-by: Guido Trotter <>

89ff748d 04/24/2013 11:00 am Thomas Thrainer

Extract DRBD-related classes into block/

This is in preparation to introducing support for DRBD8.4. had to be extracted as well in order to avoid cylic imports
between and It now contains the BlockDev class and
utility functions needed by and

ce9283c1 04/24/2013 10:59 am Thomas Thrainer

Move lib/ to lib/block/

That's in preparation of extracting DRBD related code from As is already rather long, new features will require to split it
into more manageable pieces. That's why it's moved in an own directory.

Signed-off-by: Thomas Thrainer <>...

55cec070 04/22/2013 02:19 pm Michele Tartara

Reason trail implementation for instance reboot

This commits allows ganeti to correctly forward the reason trail information
regarding instance reboot.

Signed-off-by: Michele Tartara <>
Reviewed-by: Helga Velroyen <>

584ea340 04/22/2013 02:11 pm Michele Tartara

Add function for storing the reason trail of an instance

We are interested in storing the reason trail for operations that changed
the state of instances. This commit adds a function to do this.

Also, the GetInstReasonFilename() function name is prepended with an...

aa922d64 04/22/2013 02:10 pm Michele Tartara

Remove old "reason" implementation

Remove the useless parts of the old, partial, implementation of the support for
tracking the reason of instances state change, before implementing the new
reason trail support, as per the design document.

Signed-off-by: Michele Tartara <>...

68d95757 04/17/2013 09:27 am Guido Trotter

Move HooksMaster out of the mcpu module

We need to do this, so that doesn't need to import mcpu, and
thus indirectly cmdlib. This reduces the size of the node daemon by
about half, which is very important as it is pinned in memory.

This solves Issue 419....

723ec678 04/12/2013 12:31 am Guido Trotter

Merge branch 'devel-2.7'

  • devel-2.7: (26 commits)
    Fix burnin install path
    Fix format of the NEWS file
    NEWS: Add news entry for the hail disk policy fix
    Add shelltests verifying hail applies disk ipolicy per disk
    Make the disks parameter available to the constructor...
fe05a931 04/10/2013 06:09 pm Michele Tartara

Fix job queue directory permission problems

If split users are used, the queue directory could only be accessed
by masterd, but also confd needs to be able to read it, e.g. when it
is queried as part of "gnt-job list"

This commit fixes the permissions in such a way to allow proper access rights....

3234695b 02/20/2013 03:20 pm Michael Hanselmann

Merge branch 'devel-2.7'

  • devel-2.7:
    NEWS: Fix the fix in commit 82b6f9a
    NEWS: Fix release date for 2.7.0 beta1
    Minor fixes regarding change
    Fix issue 378
    NEWS: Mention multi-alloc and fix typo
    Add cfgupgrade for changing to uuid...
4a90bd4f 02/19/2013 04:27 pm Michele Tartara

Status change reason support for Reboot

Add support to the Reboot command for specifying the reason for the last
status change.

Some features are implemented as functions, even if used only once, because
they will be used by the future patches introducing reason support for all...

a59d5fa1 02/19/2013 04:27 pm Michele Tartara

Infrastructure for specifying instance status change reason

This patch introduces some infrastructural modifications that will be used by
the following commits to implement the support for specifying the reason for
the last status change of an instance.

aee9a8a0 02/18/2013 12:06 pm Dimitris Aragiorgis

Remove useless code in backend for network hooks

In backend NICs arrive with netinfo filled. If is not None
nic.netinfo is not too. Thus all the info is derived from HooksDict()
and must not be checked.

Signed-off-by: Dimitris Aragiorgis <>...

45bc4635 02/12/2013 03:47 pm Iustin Pop

Finish the remote→restricted commands rename

The documentation still points to /etc/ganeti/remote-commands,
although the code is already using restricted-command. Update the
documentation and a few docstrings accordingly.

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

d89168ff 02/08/2013 01:40 pm Guido Trotter

OS environment: add network information

1) Move the hooks environment dict generator inside the object. This
also adds missing values such as network family and uuid.
2) Use the same generator both for the os environment and for the
instance hooks.
3) Update manpage and hooks documentation....

3b721842 01/22/2013 04:05 pm Michael Hanselmann

Add test for backend._GetBlockDevSymlinkPath

Add a unit test for the trivial “_GetBlockDevSymlinkPath” function in
backend (small changes in the function were required).

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

d5a690cb 01/16/2013 07:09 pm Bernardo Dal Seno

cluster-verify checks that PVs are not shared

When exclusive_storage is set, cluster-verify complains if PVs are shared
among unrelated LVs.

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

19e1b715 12/27/2012 03:33 pm Iustin Pop

Return master ip script output in case of failure

Currently only the exit code is returned, which is somewhat pointless:
for failures, we already know it's ≠ 0, so we don't have enough
information (reported on the mailing list). By logging the output as
well (if any), the user will have more information available for...

b954f097 12/22/2012 11:47 am Constantinos Venetsanopoulos

Add the gnt-storage client

Add a new client called 'gnt-storage'.
The client interacts with the ExtStorage interface, similarly to
the way gnt-os interacts with the OS interface.

For now, only two commands are supported: 'info' and 'diagnose'.

'diagnose' calculates the node status of each provider on each node,...

1a3c5d4e 12/21/2012 06:45 pm Bernardo Dal Seno

Add exclusive_storage parameter to node_info RPC

The flag is passed to the low-level functions that need it, but it's not
yet used. Also, RPCs get just a default value for now.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Iustin Pop <>

ee1478e5 12/21/2012 01:40 pm Bernardo Dal Seno

Add exclusive_storage parameter to blockdev_create RPC

The flag is passed to the low-level functions that need it, but it's not
yet used.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Iustin Pop <>

59726e15 12/21/2012 01:40 pm Bernardo Dal Seno

Added class to contain information about a PV

This makes the code more readable and easier to upgrade.
bdev.LogicalVolume.GetPVInfo and the code that depends on it have been
refactored to use the new class.

utils.CheckVolumeGroupSize() has been moved to lib/utils/, where more...

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

99e222b1 12/13/2012 01:29 pm Michael Hanselmann

Add RPC for setting watcher pause

The watcher pause file should be set/unset on all nodes at once, not
only the master node. For that a new RPC is needed.

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

7a476bb5 11/23/2012 04:23 pm Dimitris Aragiorgis

Export network in FinalizeExport()

Signed-off-by: Dimitris Aragiorgis <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

405bffe2 11/21/2012 03:43 pm Michael Hanselmann

Rename leftovers from remote to restricted commands

As per Iustin Pop's suggestion in <> on

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

42bd26e8 11/21/2012 03:43 pm Michael Hanselmann

backend: Rename RunRemoteCommand to RunRestrictedCmd

As per Iustin Pop's suggestion in <> on

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

878c42ae 11/21/2012 03:43 pm Michael Hanselmann

Rename constants and directory for restricted commands

As per Iustin Pop's suggestion in <> on

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

1fdeb284 11/21/2012 03:43 pm Michael Hanselmann

Rename configure option for restricted commands

It is no longer “--enable-remote-commands”, but rather

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

a5ad5e58 11/20/2012 07:51 pm Apollon Oikonomopoulos

Peripheral changes for networks

Specifically: * export a new environment variable for the gnt-os-interface * export a new environment variable for KVM specific scripts * ovf support for networks

Signed-off-by: Apollon Oikonomopoulos <>...

1a2eb2dc 11/16/2012 04:10 pm Michael Hanselmann

backend: Implement remote commands

As per design document (doc/design-remote-commands.rst), a number of
rather strict tests is applied to any incoming request, a delay is
inserted upon errors and returned error messages are very generic
(unless it's the actual command that failed). There are unit tests for...

10b86782 11/06/2012 07:59 pm Michael Hanselmann

Add utility to check if file is executable

This replaces direct calls to “os.access” and

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

5e09a309 10/26/2012 05:35 pm Michael Hanselmann

backend: Switch to new file storage directory verification

The configuration is no longer used for verifying file storage paths.

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

72b35807 10/26/2012 05:35 pm Michael Hanselmann

Check allowed file storage paths during cluster-verify

Some paths, such as /bin or /usr/lib, should not be used for file
storage. This patch implements a check during cluster verification to
fail in case such a path has been used.

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

23e3c9b7 10/25/2012 03:18 pm Michael Hanselmann

bdev: Add verification for file storage paths

An earlier version of this patch series verified all paths in cmdlib in
the master daemon. With this change all that verification code is moved
to bdev to run inside the node daemon. The checks are much stricter...

48e175a2 10/19/2012 05:55 pm Iustin Pop

Update blockdev's "info" at instance rename

Currently, we set "info" metadata on block devices at device creation
time, but we never update it, leading to stale data in case of
instance renames. This would not be a big problem in case of regular
renames (assuming this is a rare operation), but importing instances...

5a7cb9d3 10/17/2012 02:12 pm Iustin Pop

Ignore empty/comment lines in OS variants file

Per a conversation on :

- gnt-os diagnose ; gnt-os list take in consideration blank lines in
/etc/ganeti/instance-image/variants.list that could be confusing.

Let's fix this and also let's ignore comment lines....

47130d50 10/11/2012 01:05 pm Michael Hanselmann

LUClusterVerifyGroup: Localize virtual file paths

The check for file consistency didn't properly handle virtual paths
in case of a virtual cluster. This didn't cause any breakage as in
a standard virtual cluster setup with only one node all files are
visible for every node....

ee045466 10/11/2012 12:56 pm Michael Hanselmann

Move constant for /etc/hosts to pathutils

Needed for coming patches.

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

b3589802 10/08/2012 02:39 pm Michael Hanselmann

backend: Use utils.IsBelowDir instead of local code

utils.IsBelowDir is actually tested and doesn't allow writes to
“…/queue*”, like the old code here did.

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

3439fd6b 10/05/2012 07:27 pm Michael Hanselmann

Check fingerprint of file with allowed file storage paths

This makes differences show up in “gnt-cluster verify”.

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

63a3d8f7 10/05/2012 05:17 am Michael Hanselmann

backend: Check for shared storage also

If normal file storage was disabled but shared storage enabled,
“_TransformFileStorageDir” would still throw an exception.

in “opcodes._CheckStorageType” there's also a check, but I wasn't quite
sure what the correct way of handling it was, so I added a TODO comment....

ee501db1 10/04/2012 04:38 am Michael Hanselmann

Move a function from backend to ssconf

The “WriteSsconfFiles” function is used to write ssconf files. By moving
it we can avoid importing backend into bootstrap. The latter is imported
by CLI programs and backend doesn't have much to do with them.

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

0188611b 10/03/2012 06:03 pm Michael Hanselmann

Remove constant for disk wipe block size

It is dangerous to have this block size as a global constant as that
could give the impression of it being easily changed. Doing so without
further adjustments to how “dd” is called will lead to disks not being
wiped properly....

052783ff 09/28/2012 03:14 pm Michael Hanselmann

Stop hardcoding root user

Some parts of the code still use a hardcoded user name: root. This patch
replaces all with a constant specified at build time. The end goal is to
make it possible to run a Ganeti cluster without any special privileges
(of course this will prevent some functionality from working)....

1cb97324 09/26/2012 07:35 pm Agata Murawska

instance_info now returns vcpus

instance_info and all_instances_info calls had different per-instance
return types, this commit fixes the mismatch.

Signed-off-by: Agata Murawska <>
Reviewed-by: Iustin Pop <>

cffbbae7 09/25/2012 05:28 pm Michael Hanselmann

Implement virtual cluster support in Python code

- pathutils: Prepend node-specific prefix path
- RPC: Use virtual paths (see
- SSH: Pass environment variables, use destination's node directory when
copying files using scp, use GANETI_HOSTNAME to determine hostname...

710f30ec 09/18/2012 06:09 pm Michael Hanselmann

Migrate lib/ from constants to pathutils

File system paths moved from constants to pathutils.

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

3329f4de 09/18/2012 05:58 pm Michael Hanselmann

constants: Move most paths to separate module

This is inpreparation for the implementation of virtual clusters. Many
paths will change based on an environment variable and are no longer
constant and should no longer be in “”. Since “”...

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

cad0723b 07/05/2012 03:20 pm Iustin Pop

Fix DRBD resize code

There are two bugs in the current resize code, affecting mostly DRBD.

First, due to bugs in old DRBD versions (pre 8.0.14), the code currently
calls `drbdsetup resize' on both the primary or secondary. However,
this is actually wrong per current DRBD (from drbdsetup(8)):...

615b7a0f 05/11/2012 05:01 pm Iustin Pop

Merge branch 'devel-2.5'

  • devel-2.5:
    Update NEWS and bump version for 2.5.1 release
    Fix gnt-group --help display
    Fix hardcoded Xen kernel path
    Fix grow-disk handling of invalid units
    Accept both PUT and POST in noded
    Preserve bridge MTU in KVM ifup script...
5fa90892 05/11/2012 04:40 pm Iustin Pop

Merge commit 'v2.5.1' into devel-2.5

  • commit 'v2.5.1':
    Update NEWS and bump version for 2.5.1 release
    Fix gnt-group --help display
    Fix hardcoded Xen kernel path
    Fix grow-disk handling of invalid units
    Accept both PUT and POST in noded
    Preserve bridge MTU in KVM ifup script...
9a6ade06 05/09/2012 12:31 pm Iustin Pop

Add a default PATH variable to OS scripts env

In commit 896a03f6 I cleaned up the environment for OS scripts,
however I think that was a bit too extreme - it breaks our own
instance-debootstrap hooks, because for example dpkg (called from the
grub script) requires PATH to be set....

a1f38213 05/07/2012 11:33 am Iustin Pop

Fix LVM volume listing with newer LVM

Per commit 0304f0e, newer LVM has extended the lv_attr field. However,
that commit was incomplete as we examine this attribute in another
place in the code.

Thanks to user alperhome, the _LVSLINE_REGEX in lib/ also...

ebe466d8 01/17/2012 03:01 pm Guido Trotter

Add instance_balloon_memory rpc

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

eb93b673 12/08/2011 06:03 pm Guido Trotter

Move ErrnoOnStr backend function to utils

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

94dcbdb0 12/01/2011 01:04 pm Andrea Spadaccini

Use disk parameters in noded

  • add the params attribute to BlockDev, and add the corresponding
    parameter to all the BlockDev classes;
  • change the Create, Assemble and FindDevice factory functions interface
    to accept as parameters an objects.Disk instance and a list of...
1e89a135 12/01/2011 12:38 pm Michael Hanselmann

More fixes after commit 78519c106

A quick QA run successfully finished with these changes.

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

ff3be305 11/30/2011 03:52 pm Michael Hanselmann

Fix “node_info” RPC result

Commit 78519c106 broke everything. Here's the fix.

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

78519c10 11/30/2011 12:26 pm Michael Hanselmann

Change “node_info” RPC to accept multiple VGs/hypervisors

Keeping the node state up to date will require information from multiple
VGs and hypervisors. Instead of requiring multiple calls this change
allows a single call to return all needed information. Existing users...

1db993d5 11/22/2011 04:53 pm Guido Trotter

ImportExport: use max and min memory params

Import uses the old "memory" parameter to populate the two new ones, if
they're not overridden already.

FinalizeExport exports minmem and maxmem, but also memory, as maxmem, to
allow importing to older ganeti clusters....

d529599f 11/21/2011 12:04 pm Andrea Spadaccini

Set DRBD sync speed in DRBD8.Assemble

Instead of relying on clients of the class for setting the device speed
(and, in general, the DRBD parameters), move this responsibility inside
the Assemble method.

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

702eff21 11/14/2011 05:18 pm Andrea Spadaccini

Use master IP address setup script in backend

Replace the code in backend.ActivateMasterIp and
backend.DeactivateMasterIp with the master IP address setup script,
either the default one or the one provided by the user.

- Convert to string the netmask parameter in _BuildMasterIpEnv...

57c7bc57 11/14/2011 05:18 pm Andrea Spadaccini

Change master IP address RPCs for external script

Change the master IP address RPC call chain to accept the
use_external_master_ip_script parameter. Introduces an unused parameter
in backend.ActivateMasterIp and backend.DeactivateMasterIp, that will be
used in the next commit....

17b0b812 11/14/2011 05:18 pm Andrea Spadaccini

Update cluster verify to check IP address scripts

Update cluster-verify to check the integrity of the default master IP
address setup script and the presence and executability of the external
one (if currently in use by the cluster).

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

9e6014b9 11/07/2011 04:32 pm Andrea Spadaccini

Improve error handling in netmask change

- check if the master IP with the old netmask is up before attempting to
change the netmask (to avoid a failed change netmask resulting in an
undesired activation of the master IP);
- improve error messages of the backend function;...

3ccd3243 11/03/2011 04:39 pm Andrea Spadaccini

Derive IP hooks env variables from RPC parameter

Let the environment variables of the master IP turnup/turndown be
derived from the parameter of the RPC itself (that is of type
objects.MasterNetworkParameters in both cases).

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

c79198a0 11/03/2011 04:39 pm Andrea Spadaccini

Pass MasterNetworkParameters instances in RPCs

Pass instances of objects.MasterNetworkParameters when calling RPCs for
activation and deactivation of master IP.

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

91ae95fd 11/03/2011 04:39 pm Andrea Spadaccini

Uniform master IP activation and deactivation

Add the master IP family parameter to the master IP deactivation RPCs,
so that the activation and deactivation interfaces are uniform.

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