root / man / hroller.rst @ 4edaf707
History | View | Annotate | Download (2.4 kB)
1 |
HROLLER(1) Ganeti | Version @GANETI_VERSION@ |
---|---|
2 |
============================================ |
3 |
|
4 |
NAME |
5 |
---- |
6 |
|
7 |
hroller \- Cluster rolling maintenance scheduler for Ganeti |
8 |
|
9 |
SYNOPSIS |
10 |
-------- |
11 |
|
12 |
**hroller** {backend options...} [algorithm options...] [reporting options...] |
13 |
|
14 |
**hroller** \--version |
15 |
|
16 |
|
17 |
Backend options: |
18 |
|
19 |
{ **-m** *cluster* | **-L[** *path* **]** | **-t** *data-file* | |
20 |
**-I** *path* } |
21 |
|
22 |
Algorithm options: |
23 |
|
24 |
**[ -G *name* ]** |
25 |
|
26 |
**[ -O *name...* ]** |
27 |
|
28 |
Reporting options: |
29 |
|
30 |
**[ -v... | -q ]** |
31 |
**[ -S *file* ]** |
32 |
|
33 |
DESCRIPTION |
34 |
----------- |
35 |
|
36 |
hroller is a cluster maintenance reboot scheduler. It can calculate |
37 |
which set of nodes can be rebooted at the same time while avoiding |
38 |
having both primary and secondary nodes being rebooted at the same time. |
39 |
|
40 |
For backends that support identifying the master node (currenlty |
41 |
RAPI and LUXI), the master node is scheduled as the last node |
42 |
in the last reboot group. |
43 |
|
44 |
ALGORITHM FOR CALCULATING OFFLINE REBOOT GROUPS |
45 |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
46 |
|
47 |
hroller will view the nodes as vertices of an undirected graph, |
48 |
connecting by instances which have both a primary and a secondary node. |
49 |
It will then color the graph using a few different heuristics, and |
50 |
return the minimum-size color set found. Node with the same color don't |
51 |
share an edge, and as such don't have an instance with both primary and |
52 |
secondary node on them, so they are safe to be rebooted concurrently. |
53 |
|
54 |
OPTIONS |
55 |
------- |
56 |
|
57 |
Currently only standard htools options are supported. For a description of them |
58 |
check **htools**\(1) and **hbal**\(1). |
59 |
|
60 |
BUGS |
61 |
---- |
62 |
|
63 |
Offline nodes should be ignored. |
64 |
|
65 |
If instances are online the tool should refuse to do offline rolling |
66 |
maintenances, unless explicitly requested. |
67 |
|
68 |
End-to-end shelltests should be provided. |
69 |
|
70 |
Online rolling maintenances (where instance need not be shut down, but |
71 |
are migrated from node to node) are not supported yet. Hroller by design |
72 |
should support them both with and without secondary node replacement. |
73 |
|
74 |
EXAMPLE |
75 |
------- |
76 |
|
77 |
Offline Rolling node reboot output |
78 |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
79 |
|
80 |
With the default options, the program shows one reboot group per line as |
81 |
a comma-separated list. |
82 |
:: |
83 |
|
84 |
$ hroller -L |
85 |
'Node Reboot Groups' |
86 |
node1.example.com,node3.example.com,node5.example.com |
87 |
node8.example.com,node6.example.com,node2.example.com |
88 |
node7.example.com,node4.example.com |
89 |
|
90 |
.. vim: set textwidth=72 : |
91 |
.. Local Variables: |
92 |
.. mode: rst |
93 |
.. fill-column: 72 |
94 |
.. End: |