- Nov 06, 2009
-
-
Iustin Pop authored
-
Iustin Pop authored
Both the simulate and the tiered allocation mode take a machine spec on input via a comma-separated list. This patch makes this a little bit more consistent (always use disk,ram,cpu in this order).
-
Iustin Pop authored
This patch adds the first version of tiered allocations where we decrease instance specs on allocation failure and retry the allocation. The output is not yet stable and the output changes are not documented (yet).
-
Iustin Pop authored
This patch adds a function that, for some given failure modes, shrinks a given instance in the hope that allocation will succeed when retried with the new spec.
-
- Oct 30, 2009
-
-
Iustin Pop authored
This also converts it to formatTable from hardcoded listing.
-
Iustin Pop authored
This patch reworks the internal handling of the instance spec CLI option, and adds a tiered spec option that will be used in hspace to enable the (auxiliary) tiered-spec allocation mode. It also introduces a new data type for holding the instance specification.
-
Iustin Pop authored
This allows us to do verification of option arguments in the assignment functions themselves.
-
- Oct 21, 2009
-
-
Iustin Pop authored
This doesn't need to be a monadic function, let's make it a simpler one.
-
Iustin Pop authored
Since the utilisation file might be generated at a different time from the hbal run, and instances could dissapear in the meantime, it's better to simply ignore unknown instances rather than abort.
-
Iustin Pop authored
The ordering was wrong, was showing node list details under --print-instances.
-
Iustin Pop authored
This adds run status, resource parameters and load parameters for instances.
-
- Oct 19, 2009
-
-
Iustin Pop authored
0.1.8 was never documented in the NEWS file.
-
- Oct 18, 2009
-
-
Iustin Pop authored
This patch changes the signature and implementation of the function; returning the item makes more sense (saves a lookup later again in the container, and applying idx is cheap), and the previous implementation was ugly.
-
Iustin Pop authored
-
Iustin Pop authored
Since all values are initialized to zero, the exact ordering is not important and thus we can use the positional mode for simpler code. The patch also adds docstrings to the cstats functions.
-
Iustin Pop authored
Since we now have an actual type for describing the instance moves (IMove), it's simpler to convert this into the move description/move commands, rather than re-computing the move based on initial and final nodes. This makes the shell commands computation and over-Luxi command execution use the same method of computation.
-
Iustin Pop authored
The ‘Placement’ type has been moved to Types.hs but we kept exporting it from Cluster, which is not needed.
-
Iustin Pop authored
This patch introduces a generic formatTable function (based on, and similar to the Ganeti one, but different and more FP in style) and changes the node and instance listing to it. The node list (due to the many variables) is still a little bit hackish unfortunately…
-
Iustin Pop authored
-
- Oct 16, 2009
-
-
Iustin Pop authored
-
Iustin Pop authored
-
Iustin Pop authored
This enables the per-node load/total available capacity scores to be used in balancing. Note that the total available capacity is currently fixed at zero and cannot be changed by the user.
-
Iustin Pop authored
This patch adds loading and processing the utilisation data during instance moves. While the data is not yet used, it is correctly modified by instance changes between nodes. hbal has the new ‘-U’ command line argument for this. The format of the file is simply instance name and the four stats, space-separated.
-
Iustin Pop authored
-
Iustin Pop authored
The latter is only used right after the former in the Loader module, and we'll need more of this 'update not with the data of this instance' functionality (which is different than addPri where all information must be updated). The patch also changes the signature of Node.setSec (to remain consistent with setPri).
-
Iustin Pop authored
These were already duplicate (Text and Simu) and we need tryRead in more places.
-
Iustin Pop authored
The strange printf usage is due to some limitation (it seems) in ghc for very long argument lists. The whole printout should be rewritten later.
-
- Oct 15, 2009
-
-
Iustin Pop authored
This patch adds the datatypes and modifies the nodes and instance types to have such attributes. They are not used yet in any way.
-
Iustin Pop authored
This is similar to --print-nodes, but with much fewer fields.
-
Iustin Pop authored
This exports all functions, but it's still good to have.
-
Iustin Pop authored
This makes (for now) the code hlint-clean. This is per se not a huge gain, but it allows easier tracking of regressions in style later (one-two new violations are easier to diagnose when not hidden among 20 “known” ones).
-
- Oct 14, 2009
-
-
Iustin Pop authored
-
Iustin Pop authored
This is again the cs_x to csX name change.
-
Iustin Pop authored
This changes from a_b to aB in all node and instance attributes, to match the standard Haskell style. Also attributes that should have been camel-cased but weren't were changed (e.g. plist → pList, pnode → pNode).
-
Iustin Pop authored
Before we used a tuple; since we'll need more metrics in the future, it's simpler to transform this into a list of doubles, whose elements are handled homogeneously by all the code that needs them.
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
This not so nice patch adds submit/wait-for-completion functionality in hbal. When enabled via ‘-X’ (only working on Luxi), it executes the jobs (as split into separate jobsets by Cluster.splitJobs) and waits until ganeti has finished all of them. This is a rough version: it waits ad infinitum for completion, has hardcoded timeouts, etc. Signed-off-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
This are higher level wrappers over the basic callMethod. Signed-off-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
The current Cluster.iMoveToJob always creates failovers, which is not what we want. This simply used the original instances status to select between these two (this is not optimal by the way, since the status could have changed in the meantime). Signed-off-by:
Iustin Pop <iustin@google.com>
-