only Ganeti 2.0 is supported.
+Cluster rebalancer
+------------------
+
+Compared to the N+1 solver, the rebalancer uses a very simple algorithm:
+repeatedly try to move each instance one step, so that the cluster score
+becomes better. We stop when no further move can improve the score.
+
+For algorithm details and usage, see the man page hbal(1).
+
Cluster N+1 solver
------------------
needed to fix the cluster. Note this means we won't get a balanced cluster,
just one that passes N+1 checks.
-For algorithm details and usage, see the man page hn1(1).
-
-Cluster rebalancer
-------------------
+For algorithm details and usage, see the man page hn1(1). **Note**:
+this program is deprecated, hbal should be used instead.
-Compared to the N+1 solver, the rebalancer uses a very simple algorithm:
-repeatedly try to move each instance one step, so that the cluster score
-becomes better. We stop when no further move can improve the score.
+IAllocator plugin
+-----------------
-For algorithm details and usage, see the man page hbal(1).
+The ``hail`` iallocator plugin can be used for allocations of mirrored
+and non-mirrored instances and for relocations of mirrored
+instances. It needs to be installed in Ganeti's iallocator search
+path—usually ``/usr/lib/ganeti/iallocators`` or
+``/usr/local/lib/ganeti/iallocators``.
Integration with Ganeti
-----------------------
-The programs can either get their input from text files, or online
-from a cluster via RAPI. For online collection via RAPI, the "-m"
-argument to both hn1 and hbal should specify the cluster or master
-node name.
+The ``hbal`` and ``hn1`` programs can either get their input from text
+files, or online from a cluster via RAPI. For online collection via
+RAPI, the "-m" argument to both hn1 and hbal should specify the
+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
+the right directory).
For text files, a separate tool (hscan) is provided to automate their
gathering if RAPI is available, which is better since it can extract
gnt-instance list -oname,admin_ram,sda_size,status,pnode,snodes \
--separator '|' --no-head > instances
-These two files should be saved under the names of *nodes* and *instances*.
+These two files should be saved under the names of *nodes* and
+*instances*.
Installation
------------
- json
- curl
-One these are available, just typing *make* in the top-level directory
-should be enough.
+Once these are available, just typing *make* in the top-level
+directory should be enough.
Internal (implementation) documentation is available in the ``apidoc``
directory.