Statistics
| Branch: | Tag: | Revision:

root / lib / backend.py @ 808cb0ee

History | View | Annotate | Download (153.9 kB)

# Date Author Comment
36b6d149 05/22/2014 02:18 pm Thomas Thrainer

Merge branch 'stable-2.11' into stable-2.12

  • stable-2.11
    (no commits)
  • stable-2.10
    tiered allocation: try canonical search path first
    Add QA config flag for all performance tests
    build-bash-completion: reduce branches
    Convert all the classes to new-style classes...
98da4d04 05/22/2014 01:58 pm Thomas Thrainer

Merge branch 'stable-2.10' into stable-2.11

  • stable-2.10
    tiered allocation: try canonical search path first
    Add QA config flag for all performance tests
    build-bash-completion: reduce branches
    Convert all the classes to new-style classes

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

876fb142 05/22/2014 11:13 am Helga Velroyen

Convert all the classes to new-style classes

... to make lint shut up.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Jose Lopes <>

ec9c1bf8 05/14/2014 12:17 pm Jose A. Lopes

RPC 'os_export'

The 'os_export' RPC is used to export an OS to a compressed tarball.
The path to this tarball will be given to the metadata daemon, which
will then be used to serve this package to the instances via the
instance communication mechanism.

Signed-off-by: Jose A. Lopes <>...

a44114c9 05/14/2014 12:17 pm Jose A. Lopes

Add trusted/untrusted create scripts

  • Extend 'backend.DiagnoseRPC' to stat 'create_untrusted', which
    indicates the OS is untrusted.
  • Extend queries to include the 'trusted' field, which is calculated
    from the whether the OS contains a 'create_untrusted' script....
a971cfee 05/14/2014 12:16 pm Jose A. Lopes

Fix dashes in environment names for OS params

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Hrvoje Ribicic <>

c42facd9 05/14/2014 12:16 pm Jose A. Lopes

Fix typo in documentation

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Hrvoje Ribicic <>

e9ebf2d7 05/05/2014 02:22 pm Ilias Tsitsimpis

Add 'disks_info' Instance slot

Instance's 'disks' slot will contain a list of disk UUIDs. Create a new
slot named 'disks_info' which will be annotated with the disk objects'
during the RPC.

Signed-off-by: Ilias Tsitsimpis <>
Reviewed-by: Jose A. Lopes <>

bac957e5 04/28/2014 12:10 pm Apollon Oikonomopoulos

noded: start metad via daemon-util

Signed-off-by: Apollon Oikonomopoulos <>
Reviewed-by: Jose A. Lopes <>

21a17f33 04/08/2014 03:34 pm Hrvoje Ribicic

Add file info RPC call

Due to the need to determine the size of the temporary disk used for
the VM helper, an RPC call capable of supplying this information has
been added. It can be extended as needed to supply additional
information provided by Python's os.stat....

2fd4e86d 04/02/2014 02:19 pm Jose A. Lopes

Use RPC transport to pass OS params to the metadata daemon

  • Use RPC transport to pass OS params to the metadata daemon, using
    the Luxi protocol
  • Fix comment in 'ganeti.rpc.transport'

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Hrvoje Ribicic <>

ff030c75 03/17/2014 04:07 pm Jose A. Lopes

Add 'force_variant' to RPC 'os_validate'

Move function 'CheckOSVariant' to the node and add parameter
'force_variant' to RPC 'os_validate', thus making the node verify the
OS variant together with the rest of the OS params.

Signed-off-by: Jose A. Lopes <>...

326e0925 03/14/2014 04:03 pm Jose A. Lopes

Extend '_DumpDevice' to enable/disable file truncation

... because when the data source is infinite, truncation is not
necessary, but when the data source is finite and is, for example,
smaller than the device, truncation can reduce the disk size.

Signed-off-by: Jose A. Lopes <>...

ee6106f0 03/14/2014 04:03 pm Jose A. Lopes

Fix disk truncation in download and dump OS images

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Hrvoje Ribicic <>

d00e49f6 03/14/2014 04:03 pm Jose A. Lopes

Check if OS image exists on the node before dumping

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Hrvoje Ribicic <>

2b8322f7 03/11/2014 05:09 pm Jose A. Lopes

Helper function to image a device by downloading or dumping

Add 'BlockdevImage' which downloads a file and dumps it to an
instance's disk if the path is a URL, otherwise it dumps the file
directly to the instance's disk.

Signed-off-by: Jose A. Lopes <>...

c89622cd 03/11/2014 05:09 pm Jose A. Lopes

Helper function that downloads an image and dumps it to disk

  • Add constant that holds the curl binary.
  • Add '_DownloadAndDumpDevice' which downloads a file (e.g., OS image)
    through curl and dumps it to a disk device (e.g., an instance disk).

Signed-off-by: Jose A. Lopes <>...

229fb4ea 03/11/2014 05:09 pm Jose A. Lopes

Generalize 'WipeDevice' to 'DumpDevice'

  • Fix order of imports
  • Generalize 'WipeDevice' to 'DumpDevice' which takes an additional
    argument which is the data source. This will allow this function to
    be reused for both wiping and imaging disks in a future patch....
3cf06dd4 03/11/2014 05:09 pm Jose A. Lopes

Fix docstrings

Fix several docstrings.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Hrvoje Ribicic <>

8436d0da 03/07/2014 08:54 pm Klaus Aehlig

Merge branch 'stable-2.11' into master

  • stable-2.11
    (no changes)
  • stable-2.10
    Revision bump for the 2.10.1 release
    Update NEWS file for 2.10.1
    Use node UUIDs for executing LU hook
    Add PreparePostHookNodes to LUs
    Fix error propagation in post-commit hooks...
205d3309 03/07/2014 08:33 pm Klaus Aehlig

Merge branch 'stable-2.10' into stable-2.11

  • stable-2.10
    Revision bump for the 2.10.1 release
    Update NEWS file for 2.10.1
    Use node UUIDs for executing LU hook
    Add PreparePostHookNodes to LUs
    Fix error propagation in post-commit hooks
  • stable-2.9...
4cbe5138 03/07/2014 07:53 pm Klaus Aehlig

Merge branch 'stable-2.9' into stable-2.10

  • stable-2.9
    Fix error introduced during merge
    gnt-cluster copyfile: accept relative paths
  • stable-2.8
    Improve RAPI detection of the watcher
    Add patching QA configuration files on buildbots
    Enable a timeout for instance shutdown...
85530402 03/07/2014 07:07 pm Michele Tartara

Merge branch 'origin/stable-2.8' into stable-2.9

  • stable-2.8
    Improve RAPI detection of the watcher
    Add patching QA configuration files on buildbots
    Enable a timeout for instance shutdown
    Allow KVM commands to have a timeout
    Allow xen commands to have a timeout...
874f6148 03/07/2014 12:08 pm Michele Tartara

Enable a timeout for instance shutdown

Add the timeout parameter to the StopInstance function of the hypervisor base
class and to all its implementations.

Also, change the tests as required by this change.

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

237a833c 03/04/2014 11:40 am Thomas Thrainer

Add PreparePostHookNodes to LUs

This method can be used to alter the list of node UUIDs on which post
hooks are executed. PreparePostHookNodes is called after Exec, so LUs
can use data only known after the execution of the LU.

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

71b770a9 02/28/2014 03:39 pm Klaus Aehlig

Merge branch 'stable-2.11' into master

  • stable-2.11
    Setting correct permissions of client cert (split-user)
    Add luxid group to 'users-setup'
    Add some whitespace to fix formatting
    Consider old client cert only when available
    Fix return of 'Validate'...
22114677 02/28/2014 11:06 am Helga Velroyen

Setting correct permissions of client cert (split-user)

This patch makes sure that the client certificate gets
the right permissions and owner when created. Additionally
it enhances the 'ensure_dirs' script to correct the
permissions in case they are broken for whatever reason....

46ae85de 02/27/2014 05:28 pm Helga Velroyen

Add some whitespace to fix formatting

Some error messages were lacking some spaces between lines
to make it more readable.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Klaus Aehlig <>

5fd32824 02/24/2014 05:44 pm Klaus Aehlig

Merge branch 'stable-2.11' into master

  • stable-2.10
    Let the instance's tuple of nodes start with the primary
    Fix the test that checks for the order of instance's nodes
    Revision bump for the 2.10.0 release
    Update NEWS file for 2.10.0
    Revision bump for 2.10.0~rc3...
ead368bb 02/24/2014 04:42 pm Klaus Aehlig

Merge branch 'stable-2.10' into stable-2.11

  • stable-2.10
    Let the instance's tuple of nodes start with the primary
    Fix the test that checks for the order of instance's nodes
    Revision bump for the 2.10.0 release
    Update NEWS file for 2.10.0
  • stable-2.9...
2977b72c 02/24/2014 01:53 pm Klaus Aehlig

Merge branch 'stable-2.9' into stable-2.10

  • stable-2.9
    Fix net-common script in case of routed mode
    Document hspace's SPN parameters
    Document spindles in TSPEC
    man: Update the manual page of gnt-node FAILOVER
    Make hbal deal with no-LVM storage space properly...
fd5578ee 02/20/2014 07:05 pm Klaus Aehlig

Merge branch 'stable-2.8' into stable-2.9

  • stable-2.8
    Improve job status assert affected by race condition
    Export and import Disk/NIC name
    Fix backup import in case NIC is inside a network
    Override get() method of ConfigParser

Conflicts:
lib/cmdlib/instance.py: manually apply 0973f9ed on...

0f68f7fa 02/20/2014 04:45 pm Dimitris Aragiorgis

Export and import Disk/NIC name

Name of Disk/NIC were not exported during backup until now.
Use the exported info during gnt-backup import.

Signed-off-by: Dimitris Aragiorgis <>
Signed-off-by: Michele Tartara <>
Reviewed-by: Michele Tartara <>

a53772a0 02/14/2014 04:57 pm Klaus Aehlig

Merge branch 'stable-2.11' into master

  • stable-2.11
    Update design doc wrt to improved SSL design
    Test node certificate renewal in QA
    Use node UUID as client certificate serial number
    Revert "Temporarily remove SSL changes from NEWS file"
    Revert "Disabling client certificate usage"...
ab4b1cf2 02/14/2014 03:51 pm Helga Velroyen

Use node UUID as client certificate serial number

It turns out, that some implementations of OpenSSL are more
pedantic in checking the certficates than others. In this
particular case, the SSL connection could not be
established when the serial number of the certificates...

6bce7ba2 02/07/2014 11:14 am Santi Raffa

OpCodes: modify InstanceCreate for private, secret params

Modify InstanceCreate to accept process private and secret parameters.

Signed-off-by: Santi Raffa <>
Reviewed-by: Jose A. Lopes <>

1a182390 02/07/2014 11:14 am Santi Raffa

OpCodes: modify InstanceSetParams for private parameters

Modify InstanceSetParams to accept and process private parameters.

Signed-off-by: Santi Raffa <>
Reviewed-by: Jose A. Lopes <>

cb8028f3 01/15/2014 05:48 pm Jose A. Lopes

Simplify 'GetMasterInfo' RPC

RPC 'GetMasterInfo' returns several fields, namely, 'master_netdev',
'master_ip', 'master_netmask', 'master_node', and 'primary_ip_family',
of which only the 'master_node' is actually used.

In this patch:
  • remove all the other fields and keep only the 'master_node' field....
a6c43c02 12/20/2013 03:15 pm Helga Velroyen

Verify client certificates

This patch adds a step to 'gnt-cluster verify' to verify
the existence and validity of the nodes' client
certificates. Since this is a crucial point of the
security concept, the verification is very detailed with
expressive error messages and well tested by unit tests....

b3cc1646 12/20/2013 03:15 pm Helga Velroyen

Verify incoming RPCs against candidate map

From this patch on, incoming RPC calls are checked against
the map of valid master candidate certificates. If no map
is present, the cluster is assumed to be in
bootstrap/upgrade mode and compares the incoming call...

d722af8b 12/20/2013 03:15 pm Helga Velroyen

Extend RPC call to create SSL certificates

So far the RPC call 'node_crypto_tokens' did only retrieve
the certificate digest of an existing certificate. This
call is now enhanced to also create a new certificate and
return the respective digest. This will be used in various...

b544a3c2 12/20/2013 03:15 pm Helga Velroyen

Retrieve a node's certificate digest

In various cluster operations, the master node needs to
retrieve the digest of a node's SSL certificate. For this
purpose, we add an RPC call to retrieve the digest. The
function is designed in a general way to make it possible...

5a904197 12/17/2013 06:12 pm Santi Raffa

Gluster: add the Shared File storage type

The shared file and gluster disk templates should not report their disk
space information like file does, because they do not behave the same.

If a cluster pulls from the same, shared source of storage then it is...

0359e5d0 11/29/2013 12:10 pm Spyros Trigazis

Add default_iallocator_params cluster parameter

Add a cluster parameter to hold the iallocator parameters used
by the default instance allocator. Implement the option to
modify config.data, query config.data and upgrade man pages,
tests and cfgupgrade tool. The new default_iallocator_params is...

a4417db4 11/15/2013 04:49 pm Thomas Thrainer

Merge branch 'stable-2.10' into master

Merge branch 'stable-2.10' into master

  • stable-2.10
    Don't allow optional node parameters
    Move OVS node parameters to the right place
    Make NIC VLAN queryable
    Pass VLAN parameter correctly in moves
    Use constant instead of raw string...
adef95a2 11/15/2013 03:12 pm Thomas Thrainer

Merge branch 'stable-2.9' into stable-2.10

Merge branch 'stable-2.9' into stable-2.10

  • stable-2.9
    Bump revision for 2.9.1
    Update NEWS and schedule release for 2.9.1
    Fix retrieval of xen command in class method
    Fix docstring for ganeti.storage.filestorage_unittest.py...
c42be2c0 11/14/2013 05:40 pm Petr Pudlak

Use configured SSH ports when connecting to a console

This is accomplished by passing the corresponding node group to
hv_*.py. Tests for hv_*.py that call GetInstanceConsole updated.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Hrvoje Ribicic <>

a9f33339 11/14/2013 05:40 pm Petr Pudlak

Use custom SSH ports in node groups when working with nodes

Calling `gnt-instance console` with a custom SSH port doesn't work yet.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Hrvoje Ribicic <>

a3f0f306 11/14/2013 03:08 pm Jose A. Lopes

Add Python hypervisor instance state

Add 'HvInstanceState' which represents the state of an instance
(either 'running' or 'shutdown') and fix the remaining hypervisor
backends to return a value of this type. Before this patch, each
backend was returning their own value, some were returning strings,...

a09639d1 11/11/2013 10:29 pm Santi Raffa

Remove hardcoded references to File, SharedFile templates

DTS_FILEBASED is a constant that exists and this commit makes sure
that it is used whenever sensible, rather than resorting to hardcoding
the pair of templates in very many files.

Signed-off-by: Santi Raffa <>...

64e92328 11/07/2013 04:20 pm Klaus Aehlig

Merge branch 'stable-2.8' into stable-2.9

  • stable-2.8
    Version bump for 2.8.2
    Update NEWS file for 2.8.2 release
    DRBD: ensure peers are UpToDate for dual-primary

Conflicts:
NEWS: trivial
configure.ac: ignore version bump on stable-2.8
lib/bdev.py: manually apply the part of commit...

73e15b5e 11/06/2013 12:25 pm Apollon Oikonomopoulos

DRBD: ensure peers are UpToDate for dual-primary

DrbdAttachNet supports both, normal primary/secondary node operation, and
(during live migration) dual-primary operation. When resources are newly
attached, we poll until we find all of them in connected or syncing operation....

cba1fce1 11/05/2013 03:31 pm Klaus Aehlig

Merge branch 'stable-2.10' into master

  • stable-2.10
    Fix documentation
    Replace all constant definitions with re-exports
    Prepare constants for automatic reexport
    Hs2Py constants: 'hvsParameterTypes' and 'hvsParameters'
    Fix indentation that triggers PEP8 error...
bb133242 10/31/2013 12:46 pm Klaus Aehlig

Merge branch 'stable-2.10' into master

  • stable-2.10
    Remove FIXME + update man pages wrt iallocator
    Don't check for master netdev when using OVS
    Fix TypeError in backend/ConfigureOVS
    Create Open vSwitch on Master during Cluster init
    SimpleRetry on BlockDev.Remove()...
24711492 10/31/2013 11:28 am Dimitris Aragiorgis

Check if hotplug is supported in CheckPrereq

Introduce new RPC hotplug_supported that invokes the corresponding
hypervisor's method which checks if hotplug is generally
supported. Call this RPC early in CheckPrereq() and abort if
hotplug is not supported. Currently only KVM hypervisor with...

a1578ccf 10/30/2013 11:35 am Sebastian Gebhard

Fix TypeError in backend/ConfigureOVS

In case of running into a failure during Open vSwitch creation, the error is
not given, but a TypeError is thrown. This is because the number of arguments
for the format string was not equal to the place holders.

This fixes the issue....

b3ae67d7 10/30/2013 11:03 am Dimitris Aragiorgis

SimpleRetry on BlockDev.Remove()

Sometimes, upon disk removal, corresponding file descriptors
are kept briefly open by various processes (hypervisor, blkid, etc.).
With this patch, we retry several times before raising the appropriate
error, thus making disk removal more robust against those corner cases....

3fd85fba 10/29/2013 03:56 pm Thomas Thrainer

Remove blockdev_export RPC

This RPC call is no longer used, as for intra-cluster instance moves the
import/export daemon is used too.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

a986a581 10/29/2013 03:56 pm Thomas Thrainer

Optimize dd parameters for instances moves

Benchmarks have shown that increasing the buffer size and disabling
synchronous output increased the throughput by about 10MiB/s, so make
those parameters the default.

Note that not using sync for output doesn't increase the risk of data...

50e0f1d9 10/24/2013 12:27 pm Dimitris Aragiorgis

Make hotplug related method raise HotplugError

Hotplug is not supported by default and thus we raise
HotplugError() for hotplug related methods.
If a hypervisor wants to support it, we must override VerifyHotplugSupport()
and implement the Hot* method.

Backend invokes VerifyHotplugSupport() and raises RPCFail if an...

ff5def9b 10/24/2013 12:27 pm Dimitris Aragiorgis

Return link_name in blockdev_assemble rpc

Until now this RPC returned only dev_path. Since we use it in
hotplug we have to know the simlink of the device so that we
pass it to the corresponding hypervisor command and include it
in block_devices entry in runtime files....

c5708931 10/24/2013 12:27 pm Dimitris Aragiorgis

Hotplug: rpc support

Introduce new RPC that eventually invoke hypervisor specific
hotplug functions. In order to be generic it has the following
arguments: device type, action, device, extra info, seq.
Device type can be NIC or DISK, action can be ADD, REMOVE,...

66d3d195 10/24/2013 12:27 pm Dimitris Aragiorgis

block_devices = (disk, link, uri)

Do not pass BlockDev instance to hypervisor. Instead calculate the
drive_uri (if any) in backend level and pass only the string to
hypervisor.

Hypervisor should not be aware of the entire block device but only
the final path it can be reached....

b9e12624 10/17/2013 11:09 am Hrvoje Ribicic

Add a console information RPC call

As the instance queries need console information, and the information
is retrieved through python classes that should not be ported yet, an
RPC call supplying the information has been added. Some tests as well.

Signed-off-by: Hrvoje Ribicic <>...

117a85a0 10/02/2013 05:55 pm Raffa Santi

Add Userspace RBD support in KVM

  • Add device class object in block_device tuple
  • Update hv_xen.py for new block_devices format
  • Fix tests broken by the change

Signed-off-by: Santi Raffa <>
Reviewed-by: Thomas Thrainer <>

b1808f46 09/27/2013 09:45 am Thomas Thrainer

Use secondary IP when moving instances

All data traffic usually goes over the secondary network, but
gnt-instance move didn't. This patch corrects this problem by using the
target nodes secondary IP as move target.

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

f56ab6d1 09/27/2013 09:33 am Thomas Thrainer

Use secondary IP when moving instances

All data traffic usually goes over the secondary network, but
gnt-instance move didn't. This patch corrects this problem by using the
target nodes secondary IP as move target.

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

a57e502a 09/24/2013 09:17 am Thomas Thrainer

Remove physical_id field from disk object

The 'physical_id' field of disk objects is no longer used, so remove it.
Also, all references are removed together with the code which made sure
that the physical_id is up to date when transmitted over RPC.

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

0c3d9c7c 09/24/2013 09:17 am Thomas Thrainer

Replace physical_id with dynamic_params

The disk field 'physical_id' has to be kept up to date whenever a disk
object is sent to a node via RPC. This is done with the SetDiskID method
manually, which is a source of bugs.

This patch replaces the use of 'physical_id' with a new field names...

5bd52dab 09/24/2013 09:17 am Thomas Thrainer

Fix typo

Fix typo in comment.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Jose A. Lopes <>

0c5f1b13 09/12/2013 03:23 pm Thomas Thrainer

Merge branch 'stable-2.9' into master

  • stable-2.9
    Fix bridging in net-common
    Sync build_chroot with buildbot slack role
    Auto-upgrade of disks' config wrt LD-renaming
    Fix tests regarding DISK_LD_DEFAULTS
    Fixing renaming of DISK_LD_DEFAULTS
    Replace LD_* constants with DT_* constants...
cd3b4ff4 08/28/2013 06:19 pm Helga Velroyen

Replace LD_* constants with DT_* constants

LD_* constants are basically like DT_* constants, except
for that both file and shared file were mapped to file.
In order to not having to maintain three slightly different
sets of disk-related constants (DT, LD and ST), we merge...

78f99abb 08/23/2013 03:12 pm Michele Tartara

Lint improvements to regexps

Fix some regular expressions so that they pass lint checks with newer versions
of pylint.

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

4daa5eb9 08/21/2013 06:26 pm Sebastian Gebhard

Backend: Create openvswitches on the nodes

This is the functionality to create the OpenvSwitches on the nodes.
Parameters are given via opcode and checked as well as extended with
the defaults.

Signed-off-by: Sebastian Gebhard <>
Signed-off-by: Klaus Aehlig <>...

4b322a76 07/29/2013 03:27 pm Helga Velroyen

gnt-cluster verify: consider shared file storage

This patch enhances 'gnt-cluster verify' in a way that it
now validates the acceptance and existance of the shared
storage directory.

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

9c1c3c19 07/15/2013 12:34 pm Helga Velroyen

Verify file storage path

This patch adds two verification steps to 'gnt-cluster
verify':
- The configured file storage directory is checked against
the allowed file storage directories file.
- We check whether the configured file storage directory
is existing and writable on each node....

13a6c760 07/15/2013 12:34 pm Helga Velroyen

Prepare verification code for new file path verification

This patch prepares the verification code for adding
a new verification step for the file storage paths:
- It moves a couple of file storage helper functions from
bdev to filestorage (since they make more sense there...

1f7c8208 07/15/2013 12:34 pm Helga Velroyen

backend: remove ENABLE_FILE_STORAGE

This patch removes the usage of the ENABLE_FILE_STORAGE
constant in the backend code. To avoid having to pass
it through various RPC calls, we instead move the check
to cmdlib.

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

3f73b3ae 07/10/2013 03:36 pm Helga Velroyen

Unit tests for _GetVgInfo

This patch provides unit tests for the backend's
_GetVgInfo function. In order to mock the underlying
backend function, it was necessary to make it an
optional parameter of the function.

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

a18ab868 07/10/2013 03:36 pm Helga Velroyen

Unit tests for _GetVgSpindlesInfo

This patch provides unit tests for _GetVgSpindlesInfo.
In order to mock the used function for the 'bdev' module
I made the low-level storage function an optional parameter
of _GetVgSpindlesInfo. I also found out that mocked...

3c8a599a 07/10/2013 03:36 pm Helga Velroyen

More sanity checks for spindle space reporting

This patch adds a wrapper around the space reporting
for spindles which includes more sanity checks for
the input. Unit tests provided.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Klaus Aehlig <>

3ae259d3 07/10/2013 03:36 pm Helga Velroyen

Tighten sanity checks for '_GetLvmVgSpaceInfo'

This patch tightens the sanity checks for the input of
'_GetLvmVgSpaceInfo' and provides unit tests for it.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Klaus Aehlig <>

b01b7a50 07/10/2013 03:36 pm Helga Velroyen

Factor out check for storage params

This patch factors out the sanity checks for storage
parameters in its own function. Unit tests included.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Klaus Aehlig <>

52a8a6ae 07/03/2013 07:57 pm Helga Velroyen

Fix propagation of storage parameters to/from backend

This patch fixes two problems with the storage reporting
that showed up in the QA for exclusive storage:

- The processing of storage space information for instance
operations wrongly assumed that the volume group's...

235a6b29 07/02/2013 04:54 pm Thomas Thrainer

Check DRBD status on verify-disks

Enhance `gnt-cluster verify-disks` such that it checks the DRBD status
of all disks. If the status of at least one disk of an instance is
either StandAlone or Diskless, the instance disks are activated
automatically.

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

152759e4 07/02/2013 12:47 pm Helga Velroyen

Add general storage parameters to node info call

As described in the design doc about storage types,
we plan to generalize the RPC call "node info" wrt to
storage types. This patch extends the call by accepting
a list of storage units, that is not only identified...

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

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

backend.py: 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

backend.py: 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...