Skip to content
Snippets Groups Projects
Commit 9256e36a authored by Iustin Pop's avatar Iustin Pop
Browse files

Small documentation update

parent e2fa2baf
No related branches found
No related tags found
No related merge requests found
Ganeti Cluster tools (htools) Ganeti Cluster tools (ganeti-htools)
============================= ====================================
These are some simple cluster tools for fixing common problems. Right These are some simple cluster tools for fixing common allocation
now N+1 and rebalancing are included. Starting with version 0.1.0, problems on Ganeti 2.0 clusters.
only Ganeti 2.0 is supported.
Note that these tools are most useful for bigger cluster sizes
(e.g. more than five or ten machines); at lower sizes, the
computations they do can also be done manually.
Available tools
---------------
Cluster rebalancer Cluster rebalancer
------------------ ~~~~~~~~~~~~~~~~~~
Compared to the N+1 solver, the rebalancer uses a very simple algorithm: The rebalancer uses a simple algorithm to try to get the nodes of the
repeatedly try to move each instance one step, so that the cluster score cluster as equal as possible in their resource usage. It tries to
repeatedly move each instance one step, so that the cluster score
becomes better. We stop when no further move can improve the score. becomes better. We stop when no further move can improve the score.
For algorithm details and usage, see the man page hbal(1). For algorithm details and usage, see the man page hbal(1).
Cluster N+1 solver Cluster N+1 solver
------------------ ~~~~~~~~~~~~~~~~~~
This program runs a very simple brute force algorithm over the instance This program runs a very simple brute force algorithm over the instance
placement space in order to determine the shortest number of replace-disks placement space in order to determine the shortest number of replace-disks
needed to fix the cluster. Note this means we won't get a balanced cluster, needed to fix the cluster. Note this means we won't get a balanced cluster,
just one that passes N+1 checks. just one that passes N+1 checks.
For algorithm details and usage, see the man page hn1(1). **Note**: For algorithm details and usage, see the man page hn1(1).
this program is deprecated, hbal should be used instead.
.. note:: This program is deprecated, hbal should be used instead.
IAllocator plugin IAllocator plugin
----------------- ~~~~~~~~~~~~~~~~~
The ``hail`` iallocator plugin can be used for allocations of mirrored The ``hail`` iallocator plugin can be used for allocations of mirrored
and non-mirrored instances and for relocations of mirrored and non-mirrored instances and for relocations of mirrored
instances. It needs to be installed in Ganeti's iallocator search instances. It needs to be installed in Ganeti's iallocator search
path—usually ``/usr/lib/ganeti/iallocators`` or path—usually ``/usr/lib/ganeti/iallocators`` or
``/usr/local/lib/ganeti/iallocators``. ``/usr/local/lib/ganeti/iallocators``. See the man page hail(1).
Integration with Ganeti Integration with Ganeti
----------------------- -----------------------
...@@ -45,14 +52,14 @@ cluster or master node name. ``hail`` uses the standard iallocator API ...@@ -45,14 +52,14 @@ cluster or master node name. ``hail`` uses the standard iallocator API
and thus doesn't need any special setup (just needs to be installed in and thus doesn't need any special setup (just needs to be installed in
the right directory). the right directory).
For text files, a separate tool (hscan) is provided to automate their For generating the text files, a separate tool (hscan) is provided to
gathering if RAPI is available, which is better since it can extract automate their gathering if RAPI is available, which is better since
more precise information. In case RAPI is not usable for whatever it can extract more precise information. In case RAPI is not usable
reason, the following two commands should be run:: for whatever reason, the following two commands should be run::
gnt-node list -oname,mtotal,mnode,mfree,dtotal,dfree,offline \ gnt-node list -oname,mtotal,mnode,mfree,dtotal,dfree,offline \
--separator '|' --no-headers > nodes --separator '|' --no-headers > nodes
gnt-instance list -oname,admin_ram,sda_size,status,pnode,snodes \ gnt-instance list -oname,be/memory,sda_size,status,pnode,snodes \
--separator '|' --no-head > instances --separator '|' --no-head > instances
These two files should be saved under the names of *nodes* and These two files should be saved under the names of *nodes* and
...@@ -73,3 +80,7 @@ directory should be enough. ...@@ -73,3 +80,7 @@ directory should be enough.
Internal (implementation) documentation is available in the ``apidoc`` Internal (implementation) documentation is available in the ``apidoc``
directory. directory.
.. Local Variables:
.. mode: rst
.. End:
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment