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