1 HROLLER(1) Ganeti | Version @GANETI_VERSION@
2 ============================================
7 hroller \- Cluster rolling maintenance scheduler for Ganeti
12 **hroller** {backend options...} [algorithm options...] [reporting options...]
14 **hroller** \--version
19 { **-m** *cluster* | **-L[** *path* **]** | **-t** *data-file* |
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.
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.
44 ALGORITHM FOR CALCULATING OFFLINE REBOOT GROUPS
45 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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.
57 Currently only standard htools options are supported. For a description of them
58 check **htools**\(7) and **hbal**\(1).
63 Offline nodes should be ignored.
65 If instances are online the tool should refuse to do offline rolling
66 maintenances, unless explicitly requested.
68 End-to-end shelltests should be provided.
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.
77 Offline Rolling node reboot output
78 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
80 With the default options, the program shows one reboot group per line as
81 a comma-separated list.
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
90 .. vim: set textwidth=72 :