- 29 Jun, 2015 6 commits
-
-
Klaus Aehlig authored
In this way we avoid a circular dependency: tryAlloc depends on the notion of global N+1 redundancy and global N+1 redundancy for plain instances depends on knowing how to allocate an instance on a single node. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
Klaus Aehlig authored
Some of the hspace tests where designed for a setting where N+1 redundancy should only be taken into account for DRBD. So add the --no-capacity-check option in order for hspace to continue to show this behavior in the tests. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
Klaus Aehlig authored
A new option --no-capacity-checks was added to hspace to tell it to restrict N+1 redundancy checks to only DRBD. Describe it in the man page. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
Klaus Aehlig authored
While it is generally a good idea to plan capacity to have a redundant cluster, there are legitimate use cases, where we want to know how many instances can be squeezed on the cluster at all, taking only N+1 redundancy for DRBD into account. So add an option restoring the old behavior. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
Klaus Aehlig authored
Some old tests were designed without global N+1 redundancy for plain instances in mind. So, to make these tests compatible with the upcoming changes, add the (already present) option --no-capacity-checks. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
Klaus Aehlig authored
While we cannot avoid data loss on node crashs if we have plain instances, we can ensure that the cluster has enough capacity to reinstall the instances on a new node. Add a design describing how we enusre this. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
- 23 Jun, 2015 1 commit
-
-
Klaus Aehlig authored
Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
- 22 Jun, 2015 2 commits
-
-
Klaus Aehlig authored
...as they now do not behave differently any more. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
Klaus Aehlig authored
The change itself is entered atomically by WConfD. A @ConfigSync also cannot help when synchronizing with other jobs, as the only thing that this annotations reads before and writes after is the configuration---which does not include the state of temporary reservations. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
- 19 Jun, 2015 2 commits
-
-
Lisa Velden authored
Signed-off-by:
Lisa Velden <velden@google.com> Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Klaus Aehlig authored
It is a frequent request to be able to specify desired locations for particular instances. Describe a tag-based way of achieving this without adding hard enforcements. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
- 18 Jun, 2015 7 commits
-
-
Petr Pudlak authored
.. so that we can build against it. Signed-off-by:
Petr Pudlak <pudlak@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Petr Pudlak authored
Signed-off-by:
Petr Pudlak <pudlak@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Petr Pudlak authored
We'll later use it to a GHC 7.8 variant on Jessie Signed-off-by:
Petr Pudlak <pudlak@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Petr Pudlak authored
Since GHC 7.8 installation comes in two variants, depending on the version of libgmp, add the variant as an environment variable. Signed-off-by:
Petr Pudlak <pudlak@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Petr Pudlak authored
.. so that it matches the version of cabal-install. If the versions don't match, the cabal part of the Makefile fails. Signed-off-by:
Petr Pudlak <pudlak@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Petr Pudlak authored
.. to the release so that in future different releases can have different versions. Signed-off-by:
Petr Pudlak <pudlak@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Petr Pudlak authored
Otherwise it pulls the recent version (1.0.1), which fails to build against the other libraries. Signed-off-by:
Petr Pudlak <pudlak@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
- 17 Jun, 2015 12 commits
-
-
Klaus Aehlig authored
Instead of always allocating 20 instances at a time, make a conservative estimation of the number of machines that definitely should fit on the cluster without violating global N+1 redundancy. Only if this yields a too small number fall back to fixed step size. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
Klaus Aehlig authored
In the current computation of `iterateAlloc` most of the time is spent in checking whether the obtained situation is globally N+1 redundant. However, actually finding a non N+1 redundant situation only happens at the very end in a long sequence of iterations in an hspace-like use case. Therefore, we allocate a group of instances in one block without checking global N+1 redundancy; if that happens to yield a globally N+1 redundant situation, we can continue from there. Only when that heuristics fails, we do allocation step by step checking global N+1 redundancy in each allocation step. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
Klaus Aehlig authored
Add a predicate telling if a list of nodes is globally N+1 redundant. It is, if each node is. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
Klaus Aehlig authored
* stable-2.15 Restrict evacuation to a group Staying is not an option in evacuation Set release date of 2.15.0 rc1 to tomorrow Bump revision number to 2.15.0 rc1 Adapt NEWS file for 2.15.0 rc1 Set up Transport properly when communicating with metad Allow the Transport class to be used for non-master nodes * stable-2.14 Make htools tolerate missing "dtotal" and "dfree" on luxi * stable-2.13 Mention migration change in NEWS Move misplaced NEWS entry Add protection against daemons that may already be listening Attempt to cleanup failed migrations using a pidfile Add utility that gets the full command line of a process Introduce socat as a way of doing xl migrations fix typo in UPGRADE notes During start, only update job file locally * stable-2.12 Fix tests for setting (shared) file storage directory Add missing call for setting shared file storage directory Update ganeti-luxid synopsis Update ganeti-mond synopsis Update ganeti-confd synopsis Update copyright statement Conflicts: NEWS: take all additions configure.ac: ignore suffix bump src/Ganeti/HTools/GlobalN1.hs: trivial Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Klaus Aehlig authored
* stable-2.14 Make htools tolerate missing "dtotal" and "dfree" on luxi Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Klaus Aehlig authored
N+1 redundancy was always a per-group property. Do the same with shared-storage N+1 redundancy, i.e., restrict the escape candidates to nodes of the same group. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
Klaus Aehlig authored
When checking whether a node can be evacuated, do not consider the node itself as an escape location. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
Klaus Aehlig authored
If a cluster allows sharedfile as only disk template, the amount of total and free disk space might not be available. This is perfectly normal, hence make the luxi backend handle it gracefully and just report 0 available disk on 0 total disk. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
Klaus Aehlig authored
A new option was added to gnt-cluster verify-disks to restrict verification to a single group only. Describe it in the man page as well. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Klaus Aehlig authored
Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Klaus Aehlig authored
And only act on that group instead of on all groups, if the parameter is given. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Klaus Aehlig authored
...to allow users to only verify the disks in a certain node group. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
- 16 Jun, 2015 10 commits
-
-
Klaus Aehlig authored
The corresponding optional values in python are encoded in the poor-man's-Maybe way, i.e., null for Nothing and unmodified for Just. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Helga Velroyen authored
Signed-off-by:
Helga Velroyen <helgav@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
BSRK Aditya authored
Added new wconfd RPC SetInstanceStatus. _SetInstanceStatus is now using this RPC. _SetInstanceStatus is used by many config mod functions. These functions no longer use config lock. Moved the original implementation of _SetInstanceStatus to config_mock. Signed-off-by:
BSRK Aditya <bsrk@google.com> Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
BSRK Aditya authored
Add wconfd RPC AddTcpUdpPort. This rpc is now being used by config mod function AddTcpUdpPort. Removed config lock from AddTcpUdpPort. Added a basic AddTcpUdpPort in config_mock for testing purposes. Signed-off-by:
BSRK Aditya <bsrk@google.com> Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Helga Velroyen authored
Signed-off-by:
Helga Velroyen <helgav@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
Helga Velroyen authored
.. to prepare for the new release. Signed-off-by:
Helga Velroyen <helgav@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
Klaus Aehlig authored
While probably not widely used by third-party tools, the IAllocator protocol still is an external interface of Ganeti. So mention the extension of the protocol and describe how users can continue to use their third-party IAllocator not aware of that extension. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Klaus Aehlig authored
When converting an instance from plain to DRBD, a secondary node has to be chosen. Allow using an IAllocator to do this choice. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Klaus Aehlig authored
If we change the template of an instance to DRBD, a secondary node needs to be chosen. Instead of insisting that it be specified explicitly, also support asking an IAllocator. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Klaus Aehlig authored
In order to support automatic choice of the secondary node in case of a disk-template conversion to DRBD, we need to pass the IAllocator to be used. So extend the OpCode accordingly. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-