Statistics
| Branch: | Tag: | Revision:

root / hail.1 @ e10be8f2

History | View | Annotate | Download (1.8 kB)

1 c6702e5e Iustin Pop
.TH HAIL 1 2009-03-23 htools "Ganeti H-tools"
2 c6702e5e Iustin Pop
.SH NAME
3 c6702e5e Iustin Pop
hail \- Ganeti IAllocator plugin
4 c6702e5e Iustin Pop
5 c6702e5e Iustin Pop
.SH SYNOPSIS
6 c6702e5e Iustin Pop
.B hail
7 c6702e5e Iustin Pop
.I "input-file"
8 c6702e5e Iustin Pop
9 c6702e5e Iustin Pop
.B hail
10 c6702e5e Iustin Pop
.B --version
11 c6702e5e Iustin Pop
12 c6702e5e Iustin Pop
.SH DESCRIPTION
13 c6702e5e Iustin Pop
hail is a Ganeti IAllocator plugin that allows automatic instance
14 c6702e5e Iustin Pop
placement and automatic instance secondary node replacement using the
15 c6702e5e Iustin Pop
same algorithm as \fBhbal\fR(1).
16 c6702e5e Iustin Pop
17 c6702e5e Iustin Pop
The program takes input via a JSON-file containing current cluster
18 c6702e5e Iustin Pop
state and the request details, and output (on stdout) a JSON-formatted
19 c6702e5e Iustin Pop
response. In case of critical failures, the error message is printed
20 c6702e5e Iustin Pop
on stderr and the exit code is changed to show failure.
21 c6702e5e Iustin Pop
22 c6702e5e Iustin Pop
.SS ALGORITHM
23 c6702e5e Iustin Pop
24 c6702e5e Iustin Pop
The program uses a simplified version of the hbal algorithm.
25 c6702e5e Iustin Pop
26 c6702e5e Iustin Pop
For relocations, we try to change the secondary node of the instance
27 c6702e5e Iustin Pop
to all the valid other nodes; the node which results in the best
28 c6702e5e Iustin Pop
cluster score is chosen.
29 c6702e5e Iustin Pop
30 c6702e5e Iustin Pop
For single-node allocations (non-mirrored instances), again we select
31 c6702e5e Iustin Pop
the node which, when chosen as the primary node, gives the best score.
32 c6702e5e Iustin Pop
33 c6702e5e Iustin Pop
For dual-node allocations (mirrored instances), we chose the best
34 c6702e5e Iustin Pop
pair; this is the only choice where the algoritm is non-trivial
35 c6702e5e Iustin Pop
with regard to cluster size.
36 c6702e5e Iustin Pop
37 c6702e5e Iustin Pop
For all choices, the cluster scoring is identical to the hbal
38 c6702e5e Iustin Pop
algorithm.
39 c6702e5e Iustin Pop
40 c6702e5e Iustin Pop
.SH EXIT STATUS
41 c6702e5e Iustin Pop
42 c6702e5e Iustin Pop
The exist status of the command will be zero, unless for some reason
43 c6702e5e Iustin Pop
the algorithm fatally failed (e.g. wrong node or instance data).
44 c6702e5e Iustin Pop
45 c6702e5e Iustin Pop
.SH SEE ALSO
46 c6702e5e Iustin Pop
.BR hn1 "(1), " hscan "(1), " ganeti "(7), " gnt-instance "(8), "
47 c6702e5e Iustin Pop
.BR gnt-node "(8)"
48 e2fa2baf Iustin Pop
49 e2fa2baf Iustin Pop
.SH "COPYRIGHT"
50 e2fa2baf Iustin Pop
.PP
51 e2fa2baf Iustin Pop
Copyright (C) 2009 Google Inc. Permission is granted to copy,
52 e2fa2baf Iustin Pop
distribute and/or modify under the terms of the GNU General Public
53 e2fa2baf Iustin Pop
License as published by the Free Software Foundation; either version 2
54 e2fa2baf Iustin Pop
of the License, or (at your option) any later version.
55 e2fa2baf Iustin Pop
.PP
56 e2fa2baf Iustin Pop
On Debian systems, the complete text of the GNU General Public License
57 e2fa2baf Iustin Pop
can be found in /usr/share/common-licenses/GPL.