- Oct 28, 2010
-
-
Michael Hanselmann authored
A new constant, LUXI_VERSION, is used to verify the peer's version. The version is optional, so old(er) clients and servers talking to peers not supporting it won't break. Example with mismatching library: $ gnt-instance list Unhandled Ganeti error: LUXI version mismatch, server 2020000, request 1010000 Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
This allows LUXI errors to be encoded and serialized. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
To remove the instance after an export it needs to be stopped. This can be achived using the parameter “shutdown”, or by explicitly shutting down the instance before exporting. The latter would still require the “shutdown” parameter to be set. To make it more intuitive, this requirement is changed with this patch. Instances already stopped are accepted for automatic removal. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
On my machine it takes over 30 seconds, disabling it can speed up the QA. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
The nodes and instances parameters to the constructor are mandatory anyway, as a value of None will fail when creating the LockSet. Rather than fixing this adding code lines, since we never used the default value, let's remove them and require that the parameters are passed. This also fixes the only places where we inited GanetiLockManager with keyed parameters and without arguments. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Adeodato Simo authored
In particular: - introduce a "gnt-group" command to hold group-level operations. - ditch the concept of "default node group", except for single-group clusters. - introduce an "alloc_policy" attribute for node groups, indicating how they should be treated by automated allocation tools. - introduce a "drain" operation on node groups. - define iallocator modes for new instance allocation and inter-group moves (choosing among all groups, or providing a limiting list). - indicate and explain that changing the group of a node will be initially only supported for nodes that are empty. Signed-off-by:
Adeodato Simo <dato@google.com> Signed-off-by:
Balazs Lecz <leczb@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
This is just a basic check, plus a warning. In the future, we might do more checks, or prevent simple onlining (without readd) if --force is not passed. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
We will need the new role in CheckPrereq, so move its computation there and save the new role to self. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
This small patch modifies LUCreateInstance, LUReplaceDisks and LUMoveInstance to not use non-vm_capable nodes. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
Also changes the error code for the other CheckNode* helpers to ECODE_STATE, not ECODE_INVAL: ECODE_INVAL is for requests that are invalid (e.g. create drbd instance with one node), whereas ECODE_STATE denote requests that are not satisfiable due to cluster/node/instance state. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
This is used in two places already, and will be needed in a third, so let's abstract it. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
The method to make vm_capable integrate easily into cluster verify is as follows: - we add a new NV_VMNODES that represents *non*-vm-capable nodes - the LU populates this list (it's expected that non-vm_capable nodes are few compared to vm_capable nodes) - backend skips the checks that are related to VM hosting - in the LU, we reorder the VM-related checks so that they occur after the non-VM (generic) tests, and we only execute them conditionally Additionally, we add some support to the instance checks to detect instances living on bad nodes. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
And also do some cleanup: we only run the role changed actions if the node has actually changed roles. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
This can be used to compute a node's instances easily, and a small function to get all non-vm_capable nodes. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
This will show a warning if, for example, one side of a DRBD disk becomes unavailable. The data is collected separately from the other verification data. Example output: * Verifying instance status - ERROR: instance inst1: disk/0 on node2 is faulty Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Oct 27, 2010
-
-
Michael Hanselmann authored
- run-in-tempdir should depend on what it copies to the temporary dir - Add PYTHON_BOOTSTRAP to BUILT_SOURCES - Don't use “mkdir -p” directly - Create directory if necessary for writing bootstrap script In summary, this should make “make distcheck” in pristine checkout work again. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Eventually this will help ensuring that clients and servers are of the same version, as long as they're imported from the same path. Currently it's relatively easy for gnt-* and ganeti-* to be from a different version. Scripts will be at ganeti.client.gnt_* and a small bootstrap script calls a “Main” function from the module. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
This adds the flag and some initial handling. The rest of the changes, for cmdlib, come in a separate patch. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
There have been many bugs in gnt-node modify. Let's try to introduce some more. This patch reworks the node role changes from tracking the flag changes to completely overwriting the flags based on the new role. This paves the way for (in 2.4 or later) moving to a single attribute for nodes. We compute the old role and the new role based on the required changes and whether we need to auto-promote. Once this is done, the body of the Exec() function becomes trivial (there's more code related to output formatting than the node flag changes). Another advantage of the new version is that the entire flags are overwritten, and that all are changed at the same time, making it impossible (harder?) to have partial updates. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Balazs Lecz authored
Signed-off-by:
Balazs Lecz <leczb@google.com> [dato@google.com: extracted language fixes from bigger patch.] Signed-off-by:
Adeodato Simo <dato@google.com> Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Oct 26, 2010
-
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Michael Hanselmann authored
This causes epydoc to fail on any warning. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-