root / src / OLD-NEWS @ dd69cd3c
History | View | Annotate | Download (19 kB)
1 | dc384cf0 | Iustin Pop | Ganeti-htools release notes |
---|---|---|---|
2 | dc384cf0 | Iustin Pop | =========================== |
3 | dc384cf0 | Iustin Pop | |
4 | dc384cf0 | Iustin Pop | |
5 | cc6d2673 | Iustin Pop | **Note**: After version 0.3.1, the htools sources have been integrated |
6 | cc6d2673 | Iustin Pop | into the ganeti core repository, and released together with the ganeti |
7 | cc6d2673 | Iustin Pop | releases. Thus this NEWS file is obsolete. |
8 | cc6d2673 | Iustin Pop | |
9 | dc384cf0 | Iustin Pop | Version 0.3.1 (Fri, 11 Mar 2011) |
10 | dc384cf0 | Iustin Pop | -------------------------------- |
11 | dc384cf0 | Iustin Pop | |
12 | dc384cf0 | Iustin Pop | Minor bugfix release: |
13 | dc384cf0 | Iustin Pop | |
14 | dc384cf0 | Iustin Pop | - Fixed source archive generation: the hscolour.css file was an invalid |
15 | dc384cf0 | Iustin Pop | symlink, and the man pages were not correctly timestamped (leading to |
16 | dc384cf0 | Iustin Pop | unneeded build-time rebuilds) |
17 | dc384cf0 | Iustin Pop | - Improved the Luxi backend to show which attribute fails parsing |
18 | dc384cf0 | Iustin Pop | - Small improvements to the man pages, and also ship the HTML version of |
19 | dc384cf0 | Iustin Pop | man pages in the source archive |
20 | dc384cf0 | Iustin Pop | |
21 | dc384cf0 | Iustin Pop | |
22 | dc384cf0 | Iustin Pop | Version 0.3.0 (Fri, 04 Feb 2011) |
23 | dc384cf0 | Iustin Pop | -------------------------------- |
24 | dc384cf0 | Iustin Pop | |
25 | dc384cf0 | Iustin Pop | A significant release that breaks compatibility with Ganeti versions |
26 | dc384cf0 | Iustin Pop | below 2.4 due to the node group changes. Only the RAPI backend can talk |
27 | dc384cf0 | Iustin Pop | to older clusters, but it is recommended to use this version only with |
28 | dc384cf0 | Iustin Pop | Ganeti 2.4. |
29 | dc384cf0 | Iustin Pop | |
30 | dc384cf0 | Iustin Pop | All commands are now multi-group aware (but to various degrees), so |
31 | dc384cf0 | Iustin Pop | allocation, balancing and capacity calculation respects the group layout |
32 | dc384cf0 | Iustin Pop | and will not create “broken” instances by using nodes from different |
33 | dc384cf0 | Iustin Pop | groups. |
34 | dc384cf0 | Iustin Pop | |
35 | dc384cf0 | Iustin Pop | For a regular, single-group cluster, no changes should be directly |
36 | dc384cf0 | Iustin Pop | visible to the users. A multi-group cluster however will change some |
37 | dc384cf0 | Iustin Pop | things slightly: |
38 | dc384cf0 | Iustin Pop | |
39 | dc384cf0 | Iustin Pop | - hbal will require a target group to operate on (no cluster-wide |
40 | dc384cf0 | Iustin Pop | balancing yet) |
41 | dc384cf0 | Iustin Pop | - evacuation of (DRBD) instances from a node will be restricted to nodes |
42 | dc384cf0 | Iustin Pop | in the same group, as inter-group moves are not implemented yet |
43 | dc384cf0 | Iustin Pop | - capacity, while showing correct data, will not give per-group details |
44 | dc384cf0 | Iustin Pop | yet |
45 | dc384cf0 | Iustin Pop | |
46 | dc384cf0 | Iustin Pop | There are other changes in this release: |
47 | dc384cf0 | Iustin Pop | |
48 | dc384cf0 | Iustin Pop | - fixed a long-standing bug in hscan related to node memory data |
49 | dc384cf0 | Iustin Pop | - changed the text backend format, which unfortunately invalidates old |
50 | dc384cf0 | Iustin Pop | files |
51 | dc384cf0 | Iustin Pop | - error handling improvements, so that invalid input data reports better |
52 | dc384cf0 | Iustin Pop | where the error is |
53 | dc384cf0 | Iustin Pop | - the simulation backend changes its syntax, now it takes the allocation |
54 | dc384cf0 | Iustin Pop | policy too, and can generate multiple groups |
55 | dc384cf0 | Iustin Pop | - (internal) man page generation moved to pandoc from hand-written, |
56 | dc384cf0 | Iustin Pop | which is helpful as it can also generate HTML versions |
57 | dc384cf0 | Iustin Pop | - the balancing algorithm has been changed to work in parallel, if the |
58 | dc384cf0 | Iustin Pop | code is linked against the multi-threaded runtime; this gives a very |
59 | dc384cf0 | Iustin Pop | good speedup (~80% on 4 cores, ~60-70% of 12 cores) |
60 | dc384cf0 | Iustin Pop | |
61 | dc384cf0 | Iustin Pop | Version 0.2.8 (Thu, 23 Dec 2010) |
62 | dc384cf0 | Iustin Pop | -------------------------------- |
63 | dc384cf0 | Iustin Pop | |
64 | dc384cf0 | Iustin Pop | A bug fix release: |
65 | dc384cf0 | Iustin Pop | |
66 | dc384cf0 | Iustin Pop | - fixed balancing function for big clusters, which will improve corner |
67 | dc384cf0 | Iustin Pop | cases where hbal didn't see any solution even though the cluster was |
68 | dc384cf0 | Iustin Pop | obviously not well balanced |
69 | dc384cf0 | Iustin Pop | - fixed exit code of hbal in case of (Luxi) job errors |
70 | dc384cf0 | Iustin Pop | - changed the signal handling in hbal in order to make hbal control |
71 | dc384cf0 | Iustin Pop | easier: instead of synchronising on the count of signals, make SIGINT |
72 | dc384cf0 | Iustin Pop | cause graceful termination, and SIGTERM an immediate one |
73 | dc384cf0 | Iustin Pop | - increased the tag exclusion weight so that it has greater importance |
74 | dc384cf0 | Iustin Pop | during the balancing |
75 | dc384cf0 | Iustin Pop | - slight improvement to the speed of balancing via algorithm tweaks |
76 | dc384cf0 | Iustin Pop | |
77 | dc384cf0 | Iustin Pop | |
78 | dc384cf0 | Iustin Pop | Version 0.2.7 (Thu, 07 Oct 2010) |
79 | dc384cf0 | Iustin Pop | -------------------------------- |
80 | dc384cf0 | Iustin Pop | |
81 | dc384cf0 | Iustin Pop | Bug fixes: |
82 | dc384cf0 | Iustin Pop | |
83 | dc384cf0 | Iustin Pop | - fixed the error message for hail multi-evacuation mode |
84 | dc384cf0 | Iustin Pop | - improve evacuation mode for offline secondary nodes (ignore available |
85 | dc384cf0 | Iustin Pop | memory) |
86 | dc384cf0 | Iustin Pop | |
87 | dc384cf0 | Iustin Pop | New features: |
88 | dc384cf0 | Iustin Pop | |
89 | dc384cf0 | Iustin Pop | - add a new option ``-S`` to hbal and hspace that saves the cluster |
90 | dc384cf0 | Iustin Pop | state at the end of the processing in the text format used by the |
91 | dc384cf0 | Iustin Pop | ``-t`` option, for later re-processing |
92 | dc384cf0 | Iustin Pop | - a two new options to hbal, -g and --min-gain-limit, that should help |
93 | dc384cf0 | Iustin Pop | in limiting the number of balances steps with a low gain in the final |
94 | dc384cf0 | Iustin Pop | stages |
95 | dc384cf0 | Iustin Pop | - hbal, when executing jobs, will now wait for the current jobs to |
96 | dc384cf0 | Iustin Pop | finish at the first stop (e.g. ^C); if the user wants immediate exit, |
97 | dc384cf0 | Iustin Pop | another signal should be sent |
98 | dc384cf0 | Iustin Pop | - added “normalized” physical CPU units in hspace output (NPU), which |
99 | dc384cf0 | Iustin Pop | represents units of physical CPUs free/used, based on the max-cpu |
100 | dc384cf0 | Iustin Pop | ratio |
101 | dc384cf0 | Iustin Pop | |
102 | dc384cf0 | Iustin Pop | |
103 | dc384cf0 | Iustin Pop | Version 0.2.6 (Mon, 26 Jul 2010) |
104 | dc384cf0 | Iustin Pop | -------------------------------- |
105 | dc384cf0 | Iustin Pop | |
106 | dc384cf0 | Iustin Pop | Exactly three months since the last release. Many internal changes, plus |
107 | dc384cf0 | Iustin Pop | a couple of important changes in the balancing algorithm. |
108 | dc384cf0 | Iustin Pop | |
109 | dc384cf0 | Iustin Pop | First, the balancing may now introduce N+1 errors, if this solves other, |
110 | dc384cf0 | Iustin Pop | more critical problems. For the moment, this means that moving instances |
111 | dc384cf0 | Iustin Pop | away from offline nodes is allowed even if it creates N+1 errors, and |
112 | dc384cf0 | Iustin Pop | that means evacuation can be done in more cases. |
113 | dc384cf0 | Iustin Pop | |
114 | dc384cf0 | Iustin Pop | Second, the scoring for N+1 has changed. In previous versions, it simply |
115 | dc384cf0 | Iustin Pop | counted the number of failing N+1 nodes, which means moving an instance |
116 | dc384cf0 | Iustin Pop | away from a N+1 failed node (but without the node 'clearing' the N+1 |
117 | dc384cf0 | Iustin Pop | status) was not reflected in the cluster score. As such, the balancing |
118 | dc384cf0 | Iustin Pop | algorithm managed to clear N+1 errors only sometimes, since usually it |
119 | dc384cf0 | Iustin Pop | takes more than one move for this, and the first prerequisite move was |
120 | dc384cf0 | Iustin Pop | not 'rewarded' appropriately and thus it was not selected. Now, it is |
121 | dc384cf0 | Iustin Pop | possible to fix many more error cases than before: on a simulated 40 |
122 | dc384cf0 | Iustin Pop | node cluster full with instances (symmetrically allocated on all nodes), |
123 | dc384cf0 | Iustin Pop | around five nodes can be evacuated before N+1 errors can be solved, |
124 | dc384cf0 | Iustin Pop | whereas 0.2.5 could evacuate at best one node. |
125 | dc384cf0 | Iustin Pop | |
126 | dc384cf0 | Iustin Pop | There were some other internal changes to the scoring algorithm, such |
127 | dc384cf0 | Iustin Pop | that now the metrics have associated weights, and they are not all of |
128 | dc384cf0 | Iustin Pop | the same importance anymore. As of now, the only change is that offline |
129 | dc384cf0 | Iustin Pop | instances have a higher weight, which should favour proper node |
130 | dc384cf0 | Iustin Pop | evacuations. |
131 | dc384cf0 | Iustin Pop | |
132 | dc384cf0 | Iustin Pop | Among the other changes: |
133 | dc384cf0 | Iustin Pop | |
134 | dc384cf0 | Iustin Pop | - fixed the hspace KM_POOL_* metrics, which were returned as the final |
135 | dc384cf0 | Iustin Pop | state and not as the delta between the initial and final states |
136 | dc384cf0 | Iustin Pop | - fixed hspace handling of N+1 failing clusters: before, it used to |
137 | dc384cf0 | Iustin Pop | generate a 'fake' response, and the structure of this response was not |
138 | dc384cf0 | Iustin Pop | always in sync with the real responses, leading to missing items; |
139 | dc384cf0 | Iustin Pop | currently it proceeds correctly through the code (skipping the |
140 | dc384cf0 | Iustin Pop | computation), and uses the same display mechanisms as the normal case |
141 | dc384cf0 | Iustin Pop | - fixed hscan exit code for RAPI failures: previously it finished with |
142 | dc384cf0 | Iustin Pop | success even if all the clusters failed, which was creating issues |
143 | dc384cf0 | Iustin Pop | with the live-test script; now it exits with exit code 2 for RAPI |
144 | dc384cf0 | Iustin Pop | failures (unfortunately this is still not optimal as LUXI failures |
145 | dc384cf0 | Iustin Pop | will use exit code 1, the same as the command line) |
146 | dc384cf0 | Iustin Pop | - changed the limit values for CPU/disk, which previously were used |
147 | dc384cf0 | Iustin Pop | optionally, whereas now they are always used; the default cpu ratio |
148 | dc384cf0 | Iustin Pop | limit is now 64 VCPUs per PCPU |
149 | dc384cf0 | Iustin Pop | - changed the internal handling of the short name vs. original |
150 | dc384cf0 | Iustin Pop | (Ganeti-provided) name; now internally we always use the full name, |
151 | dc384cf0 | Iustin Pop | and only in display routines we show the shortened (called 'alias') |
152 | dc384cf0 | Iustin Pop | name; as a result, the -O and --excluded-instances options now accept |
153 | dc384cf0 | Iustin Pop | both the full name and the shortened name |
154 | dc384cf0 | Iustin Pop | - changed internal handling of JSON conversions and errors, such that |
155 | dc384cf0 | Iustin Pop | now we show a better context for failure messages, which should help |
156 | dc384cf0 | Iustin Pop | with diagnosing the malformed message |
157 | dc384cf0 | Iustin Pop | - changed the names for a few node fields, and added some more nodes; |
158 | dc384cf0 | Iustin Pop | this is most likely to help with debugging, and not with regular |
159 | dc384cf0 | Iustin Pop | operation though |
160 | dc384cf0 | Iustin Pop | - changed the node fields option to allow the '+' prefix to mean 'extend |
161 | dc384cf0 | Iustin Pop | the default fields list' rather than start from fresh (similar to |
162 | dc384cf0 | Iustin Pop | Ganeti's implementation) |
163 | dc384cf0 | Iustin Pop | - a few internal changes related to the LUXI protocol implementation, |
164 | dc384cf0 | Iustin Pop | which should make it more safe against potential bugs, one |
165 | dc384cf0 | Iustin Pop | optiomization that should help with large messages, and some patches |
166 | dc384cf0 | Iustin Pop | in preparation for potential expansion of the LUXI backend functionality |
167 | dc384cf0 | Iustin Pop | |
168 | dc384cf0 | Iustin Pop | And finally, many improvements on unittests and the live-test |
169 | dc384cf0 | Iustin Pop | script. Test coverage is much enhanced, and the test infrastructure has |
170 | dc384cf0 | Iustin Pop | better error reporting; this should lead down-the-road to better code |
171 | dc384cf0 | Iustin Pop | and fewer bugs… |
172 | dc384cf0 | Iustin Pop | |
173 | dc384cf0 | Iustin Pop | |
174 | dc384cf0 | Iustin Pop | Version 0.2.5 (Mon, 26 Apr 2010) |
175 | dc384cf0 | Iustin Pop | -------------------------------- |
176 | dc384cf0 | Iustin Pop | |
177 | dc384cf0 | Iustin Pop | Some internal cleanup plus a few user-visible changes: |
178 | dc384cf0 | Iustin Pop | |
179 | dc384cf0 | Iustin Pop | - new option for marking instances as 'do-not-move' during rebalancing |
180 | dc384cf0 | Iustin Pop | - allow ``hscan`` to scan the local cluster via Luxi |
181 | dc384cf0 | Iustin Pop | - add more metrics to ``hspace`` which show the delta between original |
182 | dc384cf0 | Iustin Pop | state and final state better (only valid for tiered allocation) |
183 | dc384cf0 | Iustin Pop | |
184 | dc384cf0 | Iustin Pop | |
185 | dc384cf0 | Iustin Pop | Version 0.2.4 (Mon, 22 Feb 2010) |
186 | dc384cf0 | Iustin Pop | -------------------------------- |
187 | dc384cf0 | Iustin Pop | |
188 | dc384cf0 | Iustin Pop | Two improvements for node evacuation: |
189 | dc384cf0 | Iustin Pop | |
190 | dc384cf0 | Iustin Pop | - hbal takes a new parameter ``--evac-mode`` that restricts the |
191 | dc384cf0 | Iustin Pop | instances to be moved to the ones on offline/drained nodes, which |
192 | dc384cf0 | Iustin Pop | should reduce the work done |
193 | dc384cf0 | Iustin Pop | - hail supports the new ``multi-evacuate`` mode of the IAllocator |
194 | dc384cf0 | Iustin Pop | protocol, that will be released in a minor release on the Ganeti 2.1 |
195 | dc384cf0 | Iustin Pop | branch |
196 | dc384cf0 | Iustin Pop | |
197 | dc384cf0 | Iustin Pop | |
198 | dc384cf0 | Iustin Pop | Version 0.2.3 (Thu, 4 Feb 2010) |
199 | dc384cf0 | Iustin Pop | -------------------------------- |
200 | dc384cf0 | Iustin Pop | |
201 | dc384cf0 | Iustin Pop | A small release: |
202 | dc384cf0 | Iustin Pop | |
203 | dc384cf0 | Iustin Pop | - Fixes selection of secondary node: previously, if the cluster had |
204 | dc384cf0 | Iustin Pop | many N+1 failures, a N+1 failed node could be selected as secondary |
205 | dc384cf0 | Iustin Pop | even if it did not have enough memory to allow the instance to be |
206 | dc384cf0 | Iustin Pop | migrated/failed over to it; this is bad for automated tools, since |
207 | dc384cf0 | Iustin Pop | we can get the cluster in an unhealthy state |
208 | dc384cf0 | Iustin Pop | - Switch the text backend to a single input file, that is generated |
209 | dc384cf0 | Iustin Pop | now by hscan and shouldn't be generated manually via |
210 | dc384cf0 | Iustin Pop | gnt-node/instance list anymore; this allows richer information to be |
211 | dc384cf0 | Iustin Pop | kept in the file, and simplifies a little the internals of the text |
212 | dc384cf0 | Iustin Pop | backend |
213 | dc384cf0 | Iustin Pop | |
214 | dc384cf0 | Iustin Pop | |
215 | dc384cf0 | Iustin Pop | Version 0.2.2 (Tue, 29 Dec 2009) |
216 | dc384cf0 | Iustin Pop | -------------------------------- |
217 | dc384cf0 | Iustin Pop | |
218 | dc384cf0 | Iustin Pop | Small release, 0.2.1 was broken and thus this was released earlier: |
219 | dc384cf0 | Iustin Pop | |
220 | dc384cf0 | Iustin Pop | - Release 0.2.1 broke the LUXI backend due to a typo, fixed |
221 | dc384cf0 | Iustin Pop | - Added a live-test script that should catch errors like the above one |
222 | dc384cf0 | Iustin Pop | in the future (needs a working, non-empty cluster) |
223 | dc384cf0 | Iustin Pop | - Changed RAPI and LUXI backends to treat drained nodes as offline, |
224 | dc384cf0 | Iustin Pop | similar to the IAllocator backend change in 0.2.0 (which was wrongly |
225 | dc384cf0 | Iustin Pop | marked as affecting all backends) |
226 | dc384cf0 | Iustin Pop | - Changed the metrics for offline instances and N1 score from percent to |
227 | dc384cf0 | Iustin Pop | count, in order to increase the priority of evacuations |
228 | dc384cf0 | Iustin Pop | - Added a new metric (offline primary instances) which should fix the |
229 | dc384cf0 | Iustin Pop | evacuation of a offline node in a 2-node cluster |
230 | dc384cf0 | Iustin Pop | |
231 | dc384cf0 | Iustin Pop | |
232 | dc384cf0 | Iustin Pop | Version 0.2.1 (Wed, 2 Dec 2009) |
233 | dc384cf0 | Iustin Pop | -------------------------------- |
234 | dc384cf0 | Iustin Pop | |
235 | dc384cf0 | Iustin Pop | - Added instance exclusion defined via instance tags |
236 | dc384cf0 | Iustin Pop | - Fixed the output of hspace to be again parseable from the shell |
237 | dc384cf0 | Iustin Pop | |
238 | dc384cf0 | Iustin Pop | |
239 | dc384cf0 | Iustin Pop | Version 0.2.0 (Tue, 10 Nov 2009) |
240 | dc384cf0 | Iustin Pop | -------------------------------- |
241 | dc384cf0 | Iustin Pop | |
242 | dc384cf0 | Iustin Pop | A significant release, with a few new major features: |
243 | dc384cf0 | Iustin Pop | |
244 | dc384cf0 | Iustin Pop | - Added direct execution of the hbal solution when using the Luxi |
245 | dc384cf0 | Iustin Pop | backend; the steps for each instance moves are submitted as a single |
246 | dc384cf0 | Iustin Pop | jobs, and the different jobs are submitted as groups in order to |
247 | dc384cf0 | Iustin Pop | parallelise the execution of moves |
248 | dc384cf0 | Iustin Pop | - Added support for balancing based on dynamic utilisation data for |
249 | dc384cf0 | Iustin Pop | instances, fed in via a text file; by default, all instances are |
250 | dc384cf0 | Iustin Pop | considered equal and this change also improves the equalisation of |
251 | dc384cf0 | Iustin Pop | secondary instances per node |
252 | dc384cf0 | Iustin Pop | - Added support for tiered capacity calculation in hspace, where we |
253 | dc384cf0 | Iustin Pop | start from a maximum instance spec and decrease the spec when we run |
254 | dc384cf0 | Iustin Pop | out of resources; this should give a better measure of available |
255 | dc384cf0 | Iustin Pop | capacity on 'fragmented' clusters; this is done separately from the |
256 | dc384cf0 | Iustin Pop | current fixed-mode computation |
257 | dc384cf0 | Iustin Pop | |
258 | dc384cf0 | Iustin Pop | Also there have been many minor improvements: |
259 | dc384cf0 | Iustin Pop | |
260 | dc384cf0 | Iustin Pop | - Added option for showing instances (“--print-instances”), similar to |
261 | dc384cf0 | Iustin Pop | the print nodes option |
262 | dc384cf0 | Iustin Pop | - Added support for customising the node list via an argument to the |
263 | dc384cf0 | Iustin Pop | print nodes option in the form of a comma-separated list of field |
264 | dc384cf0 | Iustin Pop | names; currently the field names are not documented, expecting further |
265 | dc384cf0 | Iustin Pop | changes in a next release |
266 | dc384cf0 | Iustin Pop | - Enhanced the error reporting in the Luxi and Rapi backends |
267 | dc384cf0 | Iustin Pop | - Changed the handling of drained nodes, now being treated the same as |
268 | dc384cf0 | Iustin Pop | offline nodes, for Ganeti 2.0.4+ compatibility |
269 | dc384cf0 | Iustin Pop | - A number of internal changes, simplifying code and merging some |
270 | dc384cf0 | Iustin Pop | disparate functions |
271 | dc384cf0 | Iustin Pop | - Simplify the build system in relation to creation of archives |
272 | dc384cf0 | Iustin Pop | |
273 | dc384cf0 | Iustin Pop | |
274 | dc384cf0 | Iustin Pop | Version 0.1.8 (Tue, 29 Sep 2009) |
275 | dc384cf0 | Iustin Pop | -------------------------------- |
276 | dc384cf0 | Iustin Pop | |
277 | dc384cf0 | Iustin Pop | - Brown-paper-bag release fixing haddock issues |
278 | dc384cf0 | Iustin Pop | |
279 | dc384cf0 | Iustin Pop | |
280 | dc384cf0 | Iustin Pop | Version 0.1.7 (Mon, 28 Sep 2009) |
281 | dc384cf0 | Iustin Pop | -------------------------------- |
282 | dc384cf0 | Iustin Pop | |
283 | dc384cf0 | Iustin Pop | - Fixed a bug in the Luxi backend for big responses |
284 | dc384cf0 | Iustin Pop | - Fixed test suite exit code in presence of test failures |
285 | dc384cf0 | Iustin Pop | - Changed the migrate operation to run instead failover for instances |
286 | dc384cf0 | Iustin Pop | which were marked as not running in the input data (this could have |
287 | dc384cf0 | Iustin Pop | been changed since then, but it's better than today's always migrate) |
288 | dc384cf0 | Iustin Pop | - Added support for 'cheap' moves only (only migrate/failover) in |
289 | dc384cf0 | Iustin Pop | balancing |
290 | dc384cf0 | Iustin Pop | - Added support for building without curl (thus no RAPI backend) |
291 | dc384cf0 | Iustin Pop | |
292 | dc384cf0 | Iustin Pop | |
293 | dc384cf0 | Iustin Pop | Version 0.1.6 (Wed, 19 Aug 2009) |
294 | dc384cf0 | Iustin Pop | -------------------------------- |
295 | dc384cf0 | Iustin Pop | |
296 | dc384cf0 | Iustin Pop | - Added support for Luxi (the native Ganeti protocol) |
297 | dc384cf0 | Iustin Pop | - Added support for simulated clusters (for hspace only) |
298 | dc384cf0 | Iustin Pop | - Added timeouts for the RAPI backend |
299 | dc384cf0 | Iustin Pop | - Fixed a few inconsistencies in the command line handling |
300 | dc384cf0 | Iustin Pop | - Fixed handling of errors while loading data |
301 | dc384cf0 | Iustin Pop | - The 'network' is a new dependency due to the Luxi addition |
302 | dc384cf0 | Iustin Pop | |
303 | dc384cf0 | Iustin Pop | |
304 | dc384cf0 | Iustin Pop | Version 0.1.5 (Thu, 09 Jul 2009) |
305 | dc384cf0 | Iustin Pop | -------------------------------- |
306 | dc384cf0 | Iustin Pop | |
307 | dc384cf0 | Iustin Pop | - Removed obsolete hn1 program; this allowed removal of a lot of |
308 | dc384cf0 | Iustin Pop | supporting code |
309 | dc384cf0 | Iustin Pop | - Lots of changes in hspace: the output now is a shell fragment in order |
310 | dc384cf0 | Iustin Pop | for script to source it or parse it easier; added failure reasons; |
311 | dc384cf0 | Iustin Pop | optimised to use less memory for large clusters |
312 | dc384cf0 | Iustin Pop | - Optimized the scoring algorithm (used by all tools) so that now |
313 | dc384cf0 | Iustin Pop | computations should be faster |
314 | dc384cf0 | Iustin Pop | |
315 | dc384cf0 | Iustin Pop | |
316 | dc384cf0 | Iustin Pop | Version 0.1.4 (Tue, 16 Jun 2009) |
317 | dc384cf0 | Iustin Pop | -------------------------------- |
318 | dc384cf0 | Iustin Pop | |
319 | dc384cf0 | Iustin Pop | - Added CPU count/ratio of virtual-to-physical CPUs to the cluster |
320 | dc384cf0 | Iustin Pop | scoring methods; this means that now the balancer, the iallocator |
321 | dc384cf0 | Iustin Pop | plugin and so on will try to keep the VCPU-to-PCPU ratio equal across |
322 | dc384cf0 | Iustin Pop | the cluster |
323 | dc384cf0 | Iustin Pop | - Fixed some hscan bugs |
324 | dc384cf0 | Iustin Pop | - Fixed the way iallocator reads the total disk size (was broken and it |
325 | dc384cf0 | Iustin Pop | was always falling back to summing the disk sizes) |
326 | dc384cf0 | Iustin Pop | - Internals: fixed most compile-time warnings |
327 | dc384cf0 | Iustin Pop | |
328 | dc384cf0 | Iustin Pop | |
329 | dc384cf0 | Iustin Pop | Version 0.1.3 (Fri, 05 Jun 2009) |
330 | dc384cf0 | Iustin Pop | -------------------------------- |
331 | dc384cf0 | Iustin Pop | |
332 | dc384cf0 | Iustin Pop | - Fix a bug in the ReplacePrimary instance moves, affecting most of the |
333 | dc384cf0 | Iustin Pop | tools |
334 | dc384cf0 | Iustin Pop | |
335 | dc384cf0 | Iustin Pop | |
336 | dc384cf0 | Iustin Pop | Version 0.1.2 (Tue, 02 Jun 2009) |
337 | dc384cf0 | Iustin Pop | -------------------------------- |
338 | dc384cf0 | Iustin Pop | |
339 | dc384cf0 | Iustin Pop | - Add a new program, “hspace”, which computes the free space on a |
340 | dc384cf0 | Iustin Pop | cluster (based on a given instance spec) |
341 | dc384cf0 | Iustin Pop | - Improvements in API docs and partially in the user docs |
342 | dc384cf0 | Iustin Pop | - Started adding unittests |
343 | dc384cf0 | Iustin Pop | |
344 | dc384cf0 | Iustin Pop | |
345 | dc384cf0 | Iustin Pop | Version 0.1.1 (Tue, 26 May 2009) |
346 | dc384cf0 | Iustin Pop | -------------------------------- |
347 | dc384cf0 | Iustin Pop | |
348 | dc384cf0 | Iustin Pop | - Add a new program, “hail”, which is an iallocator plugin and can |
349 | dc384cf0 | Iustin Pop | allocate/relocate instances |
350 | dc384cf0 | Iustin Pop | - Experimental support for non-mirrored instances (hail supports them, |
351 | dc384cf0 | Iustin Pop | hbal should no longer abort when it finds such instances and simply |
352 | dc384cf0 | Iustin Pop | ignore them) |
353 | dc384cf0 | Iustin Pop | - The RAPI port and/or scheme can be overriden now, and even “file://” |
354 | dc384cf0 | Iustin Pop | schemes can be used if the message body has been saved under the |
355 | dc384cf0 | Iustin Pop | appropriate name |
356 | dc384cf0 | Iustin Pop | - Lots of code reorganization, esp. rewritten loading pipeline |
357 | dc384cf0 | Iustin Pop | - Better data checking and better error messages in case validation |
358 | dc384cf0 | Iustin Pop | fails; tools now consider nodes with error in input data (‘?’ returned |
359 | dc384cf0 | Iustin Pop | by ganeti) as offline |
360 | dc384cf0 | Iustin Pop | - Small enhancement to the makefile for simpler packaging |
361 | dc384cf0 | Iustin Pop | |
362 | dc384cf0 | Iustin Pop | |
363 | dc384cf0 | Iustin Pop | Version 0.1.0 (Tue, 19 May 2009) |
364 | dc384cf0 | Iustin Pop | -------------------------------- |
365 | dc384cf0 | Iustin Pop | |
366 | dc384cf0 | Iustin Pop | - Drop compatibility with Ganeti 1.2 |
367 | dc384cf0 | Iustin Pop | - Add a new minimum score option (with a very low default), should help |
368 | dc384cf0 | Iustin Pop | with very good clusters (but is still not optimal) |
369 | dc384cf0 | Iustin Pop | - Add a --quiet option to hbal |
370 | dc384cf0 | Iustin Pop | - Add support for reading offline nodes directly from the cluster |
371 | dc384cf0 | Iustin Pop | |
372 | dc384cf0 | Iustin Pop | |
373 | dc384cf0 | Iustin Pop | Version 0.0.8 (Tue, 21 Apr 2009) |
374 | dc384cf0 | Iustin Pop | -------------------------------- |
375 | dc384cf0 | Iustin Pop | |
376 | dc384cf0 | Iustin Pop | - hbal: prevent mismatches in wrong node names being passed to -O, by |
377 | dc384cf0 | Iustin Pop | aborting in this case |
378 | dc384cf0 | Iustin Pop | - add the ability to write the commands (-C) to a script via (-C<file>), |
379 | dc384cf0 | Iustin Pop | so that it can be later executed directly; this has also changed the |
380 | dc384cf0 | Iustin Pop | commands to include the ncessary -f flags to skip confirmations |
381 | dc384cf0 | Iustin Pop | - add checks for extra argument in hbal and hn1, so that unintended |
382 | dc384cf0 | Iustin Pop | errors are catched |
383 | dc384cf0 | Iustin Pop | - raise the accepted “missing” memory limit to 512MB, to cover usual Xen |
384 | dc384cf0 | Iustin Pop | reservations |
385 | dc384cf0 | Iustin Pop | |
386 | dc384cf0 | Iustin Pop | |
387 | dc384cf0 | Iustin Pop | Version 0.0.7 (Mon, 23 Mar 2009) |
388 | dc384cf0 | Iustin Pop | -------------------------------- |
389 | dc384cf0 | Iustin Pop | |
390 | dc384cf0 | Iustin Pop | - added support for offline nodes, which are not used as targets for |
391 | dc384cf0 | Iustin Pop | instance relocation and if they hold instances the hbal algorithm will |
392 | dc384cf0 | Iustin Pop | attempt to relocate these away |
393 | dc384cf0 | Iustin Pop | - added support for offline instances, which now will no longer skew the |
394 | dc384cf0 | Iustin Pop | free memory estimation of nodes; the algorithm will no longer create |
395 | dc384cf0 | Iustin Pop | conditions for N+1 failures when such instances are later started |
396 | dc384cf0 | Iustin Pop | - implemented a complete model of node resources, in order to prevent an |
397 | dc384cf0 | Iustin Pop | unintended re-occurrence of cases like the offline instance were we |
398 | dc384cf0 | Iustin Pop | miscalculate some node resource; this gives warning now in case the |
399 | dc384cf0 | Iustin Pop | node reported free disk or free memory deviates by more than a set |
400 | dc384cf0 | Iustin Pop | amount from the expected value |
401 | dc384cf0 | Iustin Pop | - a new tool *hscan* that can generate the input text-file for the other |
402 | dc384cf0 | Iustin Pop | tools by collection via RAPI |
403 | dc384cf0 | Iustin Pop | - some small changes to the build system to make it more friendly; also |
404 | dc384cf0 | Iustin Pop | included the generated documentation in the source archive |
405 | dc384cf0 | Iustin Pop | |
406 | dc384cf0 | Iustin Pop | |
407 | dc384cf0 | Iustin Pop | Version 0.0.6 (Mon, 16 Mar 2009) |
408 | dc384cf0 | Iustin Pop | -------------------------------- |
409 | dc384cf0 | Iustin Pop | |
410 | dc384cf0 | Iustin Pop | - re-factored the hbal algorithm to make it stable in the sense that it |
411 | dc384cf0 | Iustin Pop | gives the same solution when restarted from the middle; barring |
412 | dc384cf0 | Iustin Pop | rounding of disk/memory and incomplete reporting from Ganeti (for |
413 | dc384cf0 | Iustin Pop | 1.2), it should be now feasible to rely on its output without |
414 | dc384cf0 | Iustin Pop | generating moves ad infinitum |
415 | dc384cf0 | Iustin Pop | - the hbal algorithm now uses two more variables: the node N+1 failures |
416 | dc384cf0 | Iustin Pop | and the amount of reserved memory; the first of which tries to ‘fix’ |
417 | dc384cf0 | Iustin Pop | the N+1 status, the latter tries to distribute secondaries more |
418 | dc384cf0 | Iustin Pop | equally |
419 | dc384cf0 | Iustin Pop | - the hbal algorithm now uses two more moves at each step: |
420 | dc384cf0 | Iustin Pop | replace+failover and failover+replace (besides the original failover, |
421 | dc384cf0 | Iustin Pop | replace, and failover+replace+failover) |
422 | dc384cf0 | Iustin Pop | - slightly changed the build system to embed GIT version/tags into the |
423 | dc384cf0 | Iustin Pop | binaries so that we know for a binary from which tree it was done, |
424 | dc384cf0 | Iustin Pop | either via ‘--version’ or via “strings hbal|grep version” |
425 | dc384cf0 | Iustin Pop | - changed the solution list and in general the hbal output to be more |
426 | dc384cf0 | Iustin Pop | clear by default, and changed “gnt-instance failover” to “gnt-instance |
427 | dc384cf0 | Iustin Pop | migrate” |
428 | dc384cf0 | Iustin Pop | - added man pages for the two binaries |
429 | dc384cf0 | Iustin Pop | |
430 | dc384cf0 | Iustin Pop | |
431 | dc384cf0 | Iustin Pop | Version 0.0.5 (Mon, 09 Mar 2009) |
432 | dc384cf0 | Iustin Pop | -------------------------------- |
433 | dc384cf0 | Iustin Pop | |
434 | dc384cf0 | Iustin Pop | - a few small improvements for hbal (possibly undone by later changes), |
435 | dc384cf0 | Iustin Pop | hbal is now quite faster |
436 | dc384cf0 | Iustin Pop | - fix documentation building |
437 | dc384cf0 | Iustin Pop | - allow hbal to work on non N+1 compliant clusters, but without |
438 | dc384cf0 | Iustin Pop | guarantees that the end cluster will be compliant; in any case, this |
439 | dc384cf0 | Iustin Pop | should give a smaller number of nodes that are not compliant if the |
440 | dc384cf0 | Iustin Pop | cluster state permits it |
441 | dc384cf0 | Iustin Pop | - strip common domain suffix from nodes and instances, so that output is |
442 | dc384cf0 | Iustin Pop | shorter and hopefully clearer |
443 | dc384cf0 | Iustin Pop | |
444 | dc384cf0 | Iustin Pop | |
445 | dc384cf0 | Iustin Pop | Version 0.0.4 (Sun, 15 Feb 2009) |
446 | dc384cf0 | Iustin Pop | -------------------------------- |
447 | dc384cf0 | Iustin Pop | |
448 | dc384cf0 | Iustin Pop | - better balancing algorithm in hbal |
449 | dc384cf0 | Iustin Pop | - implemented an RAPI collector, now the cluster data can be gathered |
450 | dc384cf0 | Iustin Pop | automatically via RAPI and doesn't need manual export of node and |
451 | dc384cf0 | Iustin Pop | instance list |
452 | dc384cf0 | Iustin Pop | |
453 | dc384cf0 | Iustin Pop | |
454 | dc384cf0 | Iustin Pop | Version 0.0.3 (Wed, 28 Jan 2009) |
455 | dc384cf0 | Iustin Pop | -------------------------------- |
456 | dc384cf0 | Iustin Pop | |
457 | dc384cf0 | Iustin Pop | - initial release of the hbal, a cluster rebalancing tool |
458 | dc384cf0 | Iustin Pop | - input data format changed due to hbal requirements |
459 | dc384cf0 | Iustin Pop | |
460 | dc384cf0 | Iustin Pop | |
461 | dc384cf0 | Iustin Pop | Version 0.0.2 (Tue, 06 Jan 2009) |
462 | dc384cf0 | Iustin Pop | -------------------------------- |
463 | dc384cf0 | Iustin Pop | |
464 | dc384cf0 | Iustin Pop | - fix handling of some common cases (cluster N+1 compliant from the |
465 | dc384cf0 | Iustin Pop | start, too big depth given, failure to compute solution) |
466 | dc384cf0 | Iustin Pop | - add option to print the needed command list for reaching the proposed |
467 | dc384cf0 | Iustin Pop | solution |
468 | dc384cf0 | Iustin Pop | |
469 | dc384cf0 | Iustin Pop | |
470 | dc384cf0 | Iustin Pop | Version 0.0.1 (Tue, 06 Jan 2009) |
471 | dc384cf0 | Iustin Pop | -------------------------------- |
472 | dc384cf0 | Iustin Pop | |
473 | dc384cf0 | Iustin Pop | - initial release of hn1 tool |
474 | dc384cf0 | Iustin Pop | |
475 | dc384cf0 | Iustin Pop | .. vim: set textwidth=72 : |
476 | dc384cf0 | Iustin Pop | .. Local Variables: |
477 | dc384cf0 | Iustin Pop | .. mode: rst |
478 | dc384cf0 | Iustin Pop | .. fill-column: 72 |
479 | dc384cf0 | Iustin Pop | .. End: |