- Jul 19, 2010
-
-
Iustin Pop authored
This was a regression from the name handling changes, as we started using the original names for the solution list (which is not designed for parsing/feeding back into ganeti).
-
- Jul 16, 2010
-
-
Iustin Pop authored
This needs to be abstracted in a separate function, but in the meantime we fix the issue in both places. Signed-off-by:
Iustin Pop <iustin@google.com>
-
- Jun 21, 2010
-
-
Iustin Pop authored
The rename is done such that we match Ganeti's own constants.
-
- Jun 02, 2010
-
-
Iustin Pop authored
Currently, we define the LuxiOp type as a simple enumeration, and leave the arguments structure to the users of the Ganeti.Luxi module. This is suboptimal for a couple of reasons: first, we decouple the operation type from operation arguments, and that means we don't use the type system for validation of the arguments; second, the clients themselves have to know about the JSON encoding of the protocol. For the above arguments, we change the operation type to contain the arguments too, and then the entire conversion/serialization is restricted to the Ganeti.Luxi module. Also, the removal of the JSON encoding from the clients results in an overall simplification of the code.
-
- May 20, 2010
-
-
Iustin Pop authored
This patch introduces some new functionality in the base Element type and in Container which supports searching for all 'known' names of an element, such that both short and full names are accept for various options like '-O' and '--excluded-instances'.
-
Iustin Pop authored
Currently the name used internally is modified and holds the shortened name of the nodes/instances. This has caused issues before, since we always have to strip the suffix from input data and reapply it if we need to send data back to Ganeti. This patch changes the code such that the names are never modified, only the alias, and all the internal computations can forget about the common suffix addition/removal.
-
- Feb 25, 2010
-
-
Iustin Pop authored
-
Iustin Pop authored
GHC 6.12 has some new warnings, which are valid in most cases except (IMHO) printf usage.
-
Iustin Pop authored
GHC 6.12 has become more picky about unused imports, so we need to remove/tighten some of them.
-
- Feb 23, 2010
-
-
Iustin Pop authored
-
- Feb 22, 2010
-
-
Iustin Pop authored
This mode restricts the list of instances to be moved to the instances living on the offline (and drained) nodes. Signed-off-by:
Iustin Pop <iustin@google.com>
-
- Jan 14, 2010
-
-
Iustin Pop authored
Currently in the balancing function we do two thing: - take the decision where to do a new balancing round or not - and actually computing the balancing round This is not nice, as the two parts are conceptually separate, so this patch splits the decision on whether to descend or not to a new function.
-
- Jan 07, 2010
-
-
Iustin Pop authored
This patch changes from the two separate files to a single file, with sections separated by a blank line. Currently only the node and instance data is accepted, later the cluster tags will be read too via this format. This makes all the programs accept the new format, but hscan doesn't yet generate it.
-
- Dec 01, 2009
-
-
Iustin Pop authored
This also shows them in hbal in verbose mode.
-
- Nov 27, 2009
-
-
Iustin Pop authored
While these are not actually populated from the backends, and all the programs ignore them, this patch contains the changes in the function types required.
-
- Nov 17, 2009
-
-
Iustin Pop authored
Since we don't want all instance tags to be used for exclusion, we add a command line option to filter on these. Since the iallocator protocol cannot accept command line options, currently it's not possible to specify these for hail, and thus it will never use any exclusion tags.
-
- Nov 10, 2009
-
-
Iustin Pop authored
The print nodes option can now accept an optional field list to customise the output. This is ugly, since the field names do not match the header names, but it is at least barely customisable (at runtime).
-
- Oct 16, 2009
-
-
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.
-
- Oct 15, 2009
-
-
Iustin Pop authored
This is similar to --print-nodes, but with much fewer fields.
-
- Oct 14, 2009
-
-
Iustin Pop authored
This is again the cs_x to csX name change.
-
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
This will be needed in order to generate the proper instance move commands. Signed-off-by:
Iustin Pop <iustin@google.com>
-
- Oct 02, 2009
-
-
Iustin Pop authored
This will automatically sort our Ganeti jobs into the independent job sets, and then we can submit them separately.
-
Iustin Pop authored
-
Iustin Pop authored
Since moving two instances between different node-quadruples (inst X: A, B → C, D and inst Y: E, F → G, H) can be parallelised by Ganeti, it makes sense to split the operation list into jobsets whose execution must be serialised, but whose individual jobs can be parallelised. Of course, this doesn't help, because today a single logical job is for some cases split in multiple gnt-instance invocations, which (if run using ‘--submit’) might be wrongly parallelised by Ganeti. So while for now this is mostly a cosmetic hint to the user, and it just a step for future improvements.
-
- Sep 28, 2009
-
-
Iustin Pop authored
Currently the external data loader is in CLI.hs, which makes all programs that need cli functionality (options, etc.) link against the network modules (most importantly curl). This patch splits this functionality into a new module such that (for example) hail which only deals with file I/O doesn't link against these libraries.
-
- Aug 30, 2009
-
-
Iustin Pop authored
Currently the computation, recursing part and the IO part (progress updates) of the balancing main function (iterateDepth) are all in the same function, which makes it hard to test. This patch moves the decision/computation part (whether to proceed one more round, whether we got a good result, etc.) into Cluster.hs, and leaves only the iteration and screen update in hbal.hs.
-
- Aug 26, 2009
-
-
Iustin Pop authored
This patch adds support for cheap (failover/migrate) operations only in the balancing algorithm and in the hbal command line options. This allows a very quick balancing (compared to allowing replace-disks) which can be useful as a scheduled operation.
-
- Jul 28, 2009
-
-
Guido Trotter authored
Signed-off-by:
Guido Trotter <ultrotter@google.com>
-
- Jul 15, 2009
-
-
Iustin Pop authored
This patch moves all the command line options and their internal representation into CLI.hs. This means that duplicated options between any two binaries are no longer declared twice, and that we no longer need the two *Option classes.
-
- Jul 14, 2009
-
-
Iustin Pop authored
This patch changes the backend selection method in CLI to prefer, in order: - a RAPI specification - a Luxi specification - and finally the node/instance files It also modifies hspace and hbal to provide a ‘-L’ command line option for enabling Luxi.
-
- Jul 07, 2009
-
-
Iustin Pop authored
Currently many of the exit and warning conditions mistakenly display error messages on stdout, which makes parsing the output of programs harder. This patch attempts to fix such occurrences.
-
- Jul 06, 2009
-
-
Iustin Pop authored
This big patch cleans up the code per hlint indications. Many removals of extra parentheses, replacements of concat . map with concabtMap, extra dollar signs, eta reductions, etc. were performed. The code still compiles and passes a couple of manual tests on sample files. The individual changes are also small enough as to be visually easy to confirm.
-
- Jul 02, 2009
-
-
Iustin Pop authored
Currently totalResources returns a 5-tuple of integers. This is not easy to handle, as each change on the return type means that each caller must be updated. This patch adds a new type for cluster stats and uses that instead as its return type. This simplifies its callers while complicating only a little the computation of the stats.
-
Iustin Pop authored
This patch changes Cluster.totalResources to compute more details about the cluster status, and enhances hspace to display more of these.
-
- Jun 12, 2009
-
-
Iustin Pop authored
-
Iustin Pop authored
-
- Jun 11, 2009
-
-
Iustin Pop authored
In a few places (e.g. tryRead or any printf call) it's a little bit hard to add the correct type signatures, but in the it is possible to fix these warnings (which can bite one in subtle cases).
-
- Jun 01, 2009
-
-
Iustin Pop authored
This doc-patch adds copyright and license information to (hopefully) all needed files.
-
- May 26, 2009
-
-
Iustin Pop authored
This patch makes the Types module a base module, and Node/Instance ones import it, from the previous (opposite) situation. This will allow in the future to use newtypes for the index and name types.
-