Statistics
| Branch: | Tag: | Revision:

root / man / hroller.rst @ 2207220d

History | View | Annotate | Download (2.7 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
**[ --force ]**
23

    
24
Algorithm options:
25

    
26
**[ -G *name* ]**
27

    
28
**[ -O *name...* ]**
29

    
30
**[ --node-tags** *tag,..* **]**
31

    
32
Reporting options:
33

    
34
**[ -v... | -q ]**
35
**[ -S *file* ]**
36
**[ --one-step-only ]**
37

    
38
DESCRIPTION
39
-----------
40

    
41
hroller is a cluster maintenance reboot scheduler. It can calculate
42
which set of nodes can be rebooted at the same time while avoiding
43
having both primary and secondary nodes being rebooted at the same time.
44

    
45
For backends that support identifying the master node (currenlty
46
RAPI and LUXI), the master node is scheduled as the last node
47
in the last reboot group. Apart from this restriction, larger reboot
48
groups are put first.
49

    
50
ALGORITHM FOR CALCULATING OFFLINE REBOOT GROUPS
51
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
52

    
53
hroller will view the nodes as vertices of an undirected graph,
54
connecting by instances which have both a primary and a secondary node.
55
It will then color the graph using a few different heuristics, and
56
return the minimum-size color set found. Node with the same color don't
57
share an edge, and as such don't have an instance with both primary and
58
secondary node on them, so they are safe to be rebooted concurrently.
59

    
60
OPTIONS
61
-------
62

    
63
For a description of the standard options check **htools**\(7) and
64
**hbal**\(1).
65

    
66
\--node-tags *tag,...*
67
  Restrict to nodes having at least one of the given tags.
68

    
69
\--one-step-only
70
  Restrict to the first reboot group. Output the group one node per line.
71

    
72
\--force
73
  Do not fail, even if the master node cannot be determined.
74

    
75

    
76
BUGS
77
----
78

    
79
Offline nodes should be ignored.
80

    
81
If instances are online the tool should refuse to do offline rolling
82
maintenances, unless explicitly requested.
83

    
84
End-to-end shelltests should be provided.
85

    
86
Online rolling maintenances (where instance need not be shut down, but
87
are migrated from node to node) are not supported yet. Hroller by design
88
should support them both with and without secondary node replacement.
89

    
90
EXAMPLE
91
-------
92

    
93
Offline Rolling node reboot output
94
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
95

    
96
With the default options, the program shows one reboot group per line as
97
a comma-separated list.
98
::
99

    
100
    $ hroller -L
101
    'Node Reboot Groups'
102
    node1.example.com,node3.example.com,node5.example.com
103
    node8.example.com,node6.example.com,node2.example.com
104
    node7.example.com,node4.example.com
105

    
106
.. vim: set textwidth=72 :
107
.. Local Variables:
108
.. mode: rst
109
.. fill-column: 72
110
.. End: