htools: move the '-p' option to htools.rst
[ganeti-local] / man / htools.rst
1 HTOOLS(1) Ganeti | Version @GANETI_VERSION@
2 ===========================================
3
4 NAME
5 ----
6
7 htools - Cluster allocation and placement tools for Ganeti
8
9 SYNOPSIS
10 --------
11
12 **hbal**
13   cluster balancer
14
15 **hspace**
16   cluster capacity computation
17
18 **hail**
19   IAllocator plugin
20
21 **hscan**
22   saves cluster state for later reuse
23
24
25 DESCRIPTION
26 -----------
27
28
29 ``htools`` is a suite of tools designed to help with allocation/movement
30 of instances and balancing of Ganeti clusters. ``htools`` is also the
31 generic binary that must be symlinked or hardlinked under each tool's
32 name in order to perform the different functions. Alternatively, the
33 environment variable HTOOLS can be used to set the desired role.
34
35 Installed as ``hbal``, it computes and optionally executes a suite of
36 instance moves in order to balance the cluster.
37
38 Installed as ``hspace``, it computes how many additional instances can
39 be fit on a cluster, while maintaining N+1 status. It can run on models
40 of existing clusters or of simulated clusters.
41
42 Installed as ``hail``, it acts as an IAllocator plugin, i.e. it is used
43 by Ganeti to compute new instance allocations and instance moves.
44
45 Installed as ``hscan``, it scans the local or remote cluster state and
46 saves it to files which can later be reused by the other roles.
47
48 COMMON OPTIONS
49 --------------
50
51 Options behave the same in all program modes, but not all program modes
52 support all options. Some common options are:
53
54 -p, --print-nodes
55   Prints the node status, in a format designed to allow the user to
56   understand the node's most important parameters. If the command in
57   question makes a cluster transition (e.g. balancing or allocation),
58   then usually both the initial and final node status is printed.
59
60   It is possible to customise the listed information by passing a
61   comma-separated list of field names to this option (the field list
62   is currently undocumented), or to extend the default field list by
63   prefixing the additional field list with a plus sign. By default,
64   the node list will contain the following information:
65
66   F
67     a character denoting the status of the node, with '-' meaning an
68     offline node, '*' meaning N+1 failure and blank meaning a good
69     node
70
71   Name
72     the node name
73
74   t_mem
75     the total node memory
76
77   n_mem
78     the memory used by the node itself
79
80   i_mem
81     the memory used by instances
82
83   x_mem
84     amount memory which seems to be in use but cannot be determined
85     why or by which instance; usually this means that the hypervisor
86     has some overhead or that there are other reporting errors
87
88   f_mem
89     the free node memory
90
91   r_mem
92     the reserved node memory, which is the amount of free memory
93     needed for N+1 compliance
94
95   t_dsk
96     total disk
97
98   f_dsk
99     free disk
100
101   pcpu
102     the number of physical cpus on the node
103
104   vcpu
105     the number of virtual cpus allocated to primary instances
106
107   pcnt
108     number of primary instances
109
110   scnt
111     number of secondary instances
112
113   p_fmem
114     percent of free memory
115
116   p_fdsk
117     percent of free disk
118
119   r_cpu
120     ratio of virtual to physical cpus
121
122   lCpu
123     the dynamic CPU load (if the information is available)
124
125   lMem
126     the dynamic memory load (if the information is available)
127
128   lDsk
129     the dynamic disk load (if the information is available)
130
131   lNet
132     the dynamic net load (if the information is available)
133
134 -v, --verbose
135   Increase the output verbosity. Each usage of this option will
136   increase the verbosity (currently more than 2 doesn't make sense)
137   from the default of one.
138
139 -q, --quiet
140   Decrease the output verbosity. Each usage of this option will
141   decrease the verbosity (less than zero doesn't make sense) from the
142   default of one.
143
144 -V, --version
145   Just show the program version and exit.
146
147 UNITS
148 ~~~~~
149
150 Some options accept not simply numerical values, but numerical values
151 together with a unit. By default, such unit-accepting options use
152 mebibytes. Using the lower-case letters of *m*, *g* and *t* (or their
153 longer equivalents of *mib*, *gib*, *tib*, for which case doesn't
154 matter) explicit binary units can be selected. Units in the SI system
155 can be selected using the upper-case letters of *M*, *G* and *T* (or
156 their longer equivalents of *MB*, *GB*, *TB*, for which case doesn't
157 matter).
158
159 More details about the difference between the SI and binary systems can
160 be read in the *units(7)* man page.
161
162 ENVIRONMENT
163 -----------
164
165 The environment variable ``HTOOLS`` can be used instead of
166 renaming/symlinking the programs; simply set it to the desired role and
167 then the name of the program is no longer used.
168
169 .. vim: set textwidth=72 :
170 .. Local Variables:
171 .. mode: rst
172 .. fill-column: 72
173 .. End: