Statistics
| Branch: | Tag: | Revision:

root / NEWS @ 1bbf0c40

History | View | Annotate | Download (60.1 kB)

1 61b5e342 Michael Hanselmann
News
2 61b5e342 Michael Hanselmann
====
3 920a91bf Michael Hanselmann
4 1bbf0c40 Iustin Pop
Version 2.4.2
5 1bbf0c40 Iustin Pop
-------------
6 1bbf0c40 Iustin Pop
7 1bbf0c40 Iustin Pop
*(unreleased)*
8 1bbf0c40 Iustin Pop
9 1bbf0c40 Iustin Pop
Many bug-fixes and a few new small features:
10 1bbf0c40 Iustin Pop
11 1bbf0c40 Iustin Pop
- Fixed a bug related to log opening failures
12 1bbf0c40 Iustin Pop
- Fixed a bug in instance listing with orphan instances
13 1bbf0c40 Iustin Pop
- Fixed a bug which prevented resetting the cluster-level node parameter
14 1bbf0c40 Iustin Pop
  ``oob_program`` to the default
15 1bbf0c40 Iustin Pop
- Many fixes related to the ``cluster-merge`` tool
16 1bbf0c40 Iustin Pop
- Fixed a race condition in the lock monitor, which caused failures
17 1bbf0c40 Iustin Pop
  during (at least) creation of many instances in parallel
18 1bbf0c40 Iustin Pop
- Improved output for gnt-job info
19 1bbf0c40 Iustin Pop
- Removed the quiet flag on some ssh calls which prevented debugging
20 1bbf0c40 Iustin Pop
  failures
21 1bbf0c40 Iustin Pop
- Improved the N+1 failure messages in cluster verify by actually
22 1bbf0c40 Iustin Pop
  showing the memory values (needed and available)
23 1bbf0c40 Iustin Pop
- Increased lock attempt timeouts so that when executing long operations
24 1bbf0c40 Iustin Pop
  (e.g. DRBD replace-disks) other jobs do not enter 'blocking acquire'
25 1bbf0c40 Iustin Pop
  too early and thus prevent the use of the 'fair' mechanism
26 1bbf0c40 Iustin Pop
- Changed instance query data (``gnt-instance info``) to not acquire
27 1bbf0c40 Iustin Pop
  locks unless needed, thus allowing its use on locked instance if only
28 1bbf0c40 Iustin Pop
  static information is asked for
29 1bbf0c40 Iustin Pop
- Improved behaviour with filesystems that do not support rename on an
30 1bbf0c40 Iustin Pop
  opened file
31 1bbf0c40 Iustin Pop
- Fixed the behaviour of ``prealloc_wipe_disks`` cluster parameter which
32 1bbf0c40 Iustin Pop
  kept locks on all nodes during the wipe, which is unneeded
33 1bbf0c40 Iustin Pop
- Fixed ``gnt-watcher`` handling of errors during hooks execution
34 1bbf0c40 Iustin Pop
- Fixed bug in ``prealloc_wipe_disks`` with small disk sizes (less than
35 1bbf0c40 Iustin Pop
  10GiB) which caused the wipe to fail right at the end in some cases
36 1bbf0c40 Iustin Pop
- Fixed master IP activation when doing master failover with no-voting
37 1bbf0c40 Iustin Pop
- Fixed bug in ``gnt-node add --readd`` which allowed the re-adding of
38 1bbf0c40 Iustin Pop
  the master node itself
39 1bbf0c40 Iustin Pop
- Fixed potential data-loss in under disk full conditions, where Ganeti
40 1bbf0c40 Iustin Pop
  wouldn't check correctly the return code and would consider
41 1bbf0c40 Iustin Pop
  partially-written files 'correct'
42 1bbf0c40 Iustin Pop
- Fixed bug related to multiple VGs and DRBD disk replacing
43 1bbf0c40 Iustin Pop
- Added new disk parameter ``metavg`` that allows placement of the meta
44 1bbf0c40 Iustin Pop
  device for DRBD in a different volume group
45 1bbf0c40 Iustin Pop
- Fixed error handling in the node daemon when the system libc doesn't
46 1bbf0c40 Iustin Pop
  have major number 6 (i.e. if ``libc.so.6`` is not the actual libc)
47 1bbf0c40 Iustin Pop
- Fixed lock release during replace-disks, which kept cluster-wide locks
48 1bbf0c40 Iustin Pop
  when doing disk replaces with an iallocator script
49 1bbf0c40 Iustin Pop
- Added check for missing bridges in cluster verify
50 1bbf0c40 Iustin Pop
- Handle EPIPE errors while writing to the terminal better, so that
51 1bbf0c40 Iustin Pop
  piping the output to e.g. ``less`` doesn't cause a backtrace
52 1bbf0c40 Iustin Pop
- Fixed rare case where a ^C during Luxi calls could have been
53 1bbf0c40 Iustin Pop
  interpreted as server errors, instead of simply terminating
54 1bbf0c40 Iustin Pop
- Fixed a race condition in LUGroupAssignNodes (``gnt-group
55 1bbf0c40 Iustin Pop
  assign-nodes``)
56 1bbf0c40 Iustin Pop
- Added a few more parameters to the KVM hypervisor, allowing a second
57 1bbf0c40 Iustin Pop
  CDROM, custom disk type for CDROMs and a floppy image
58 1bbf0c40 Iustin Pop
- Removed redundant message in instance rename when the name is given
59 1bbf0c40 Iustin Pop
  already as a FQDN
60 1bbf0c40 Iustin Pop
- Added option to ``gnt-instance recreate-disks`` to allow creating the
61 1bbf0c40 Iustin Pop
  disks on new nodes, allowing recreation when the original instance
62 1bbf0c40 Iustin Pop
  nodes are completely gone
63 1bbf0c40 Iustin Pop
- Added option when converting disk templates to DRBD to skip waiting
64 1bbf0c40 Iustin Pop
  for the resync, in order to make the instance available sooner
65 1bbf0c40 Iustin Pop
- Added two new variables to the OS scripts environment (containing the
66 1bbf0c40 Iustin Pop
  instance's nodes)
67 1bbf0c40 Iustin Pop
- Made the root_path and optional parameter for the xen-pvm hypervisor,
68 1bbf0c40 Iustin Pop
  to allow use of ``pvgrub`` as bootloader
69 1bbf0c40 Iustin Pop
70 1bbf0c40 Iustin Pop
And as usual, various improvements to the error messages, documentation
71 1bbf0c40 Iustin Pop
and man pages.
72 1bbf0c40 Iustin Pop
73 c199dbae Iustin Pop
Version 2.4.1
74 c199dbae Iustin Pop
-------------
75 c199dbae Iustin Pop
76 c199dbae Iustin Pop
*(Released Wed, 09 Mar 2011)*
77 c199dbae Iustin Pop
78 c199dbae Iustin Pop
Emergency bug-fix release. ``tools/cfgupgrade`` was broken and overwrote
79 c199dbae Iustin Pop
the RAPI users file if run twice (even with ``-dry-run``).
80 c199dbae Iustin Pop
81 c199dbae Iustin Pop
The release fixes that bug (nothing else changed).
82 c199dbae Iustin Pop
83 c199dbae Iustin Pop
84 20203756 Iustin Pop
Version 2.4.0
85 20203756 Iustin Pop
-------------
86 20203756 Iustin Pop
87 20203756 Iustin Pop
*(Released Mon, 07 Mar 2011)*
88 20203756 Iustin Pop
89 20203756 Iustin Pop
Final 2.4.0 release. Just a few small fixes:
90 20203756 Iustin Pop
91 20203756 Iustin Pop
- Fixed RAPI node evacuate
92 20203756 Iustin Pop
- Fixed the kvm-ifup script
93 20203756 Iustin Pop
- Fixed internal error handling for special job cases
94 20203756 Iustin Pop
- Updated man page to specify the escaping feature for options
95 20203756 Iustin Pop
96 20203756 Iustin Pop
97 94b697b0 Iustin Pop
Version 2.4.0 rc3
98 94b697b0 Iustin Pop
-----------------
99 94b697b0 Iustin Pop
100 94b697b0 Iustin Pop
*(Released Mon, 28 Feb 2011)*
101 94b697b0 Iustin Pop
102 94b697b0 Iustin Pop
A critical fix for the ``prealloc_wipe_disks`` feature: it is possible
103 94b697b0 Iustin Pop
that this feature wiped the disks of the wrong instance, leading to loss
104 94b697b0 Iustin Pop
of data.
105 94b697b0 Iustin Pop
106 94b697b0 Iustin Pop
Other changes:
107 94b697b0 Iustin Pop
108 df3df936 Michael Hanselmann
- Fixed title of query field containing instance name
109 df3df936 Michael Hanselmann
- Expanded the glossary in the documentation
110 df3df936 Michael Hanselmann
- Fixed one unittest (internal issue)
111 94b697b0 Iustin Pop
112 94b697b0 Iustin Pop
113 e41a1c0c Iustin Pop
Version 2.4.0 rc2
114 e41a1c0c Iustin Pop
-----------------
115 e41a1c0c Iustin Pop
116 e41a1c0c Iustin Pop
*(Released Mon, 21 Feb 2011)*
117 e41a1c0c Iustin Pop
118 e41a1c0c Iustin Pop
A number of bug fixes plus just a couple functionality changes.
119 e41a1c0c Iustin Pop
120 e41a1c0c Iustin Pop
On the user-visible side, the ``gnt-* list`` command output has changed
121 df3df936 Michael Hanselmann
with respect to "special" field states. The current rc1 style of display
122 df3df936 Michael Hanselmann
can be re-enabled by passing a new ``--verbose`` (``-v``) flag, but in
123 df3df936 Michael Hanselmann
the default output mode special fields states are displayed as follows:
124 e41a1c0c Iustin Pop
125 df3df936 Michael Hanselmann
- Offline resource: ``*``
126 df3df936 Michael Hanselmann
- Unavailable/not applicable: ``-``
127 df3df936 Michael Hanselmann
- Data missing (RPC failure): ``?``
128 df3df936 Michael Hanselmann
- Unknown field: ``??``
129 e41a1c0c Iustin Pop
130 e41a1c0c Iustin Pop
Another user-visible change is the addition of ``--force-join`` to
131 e41a1c0c Iustin Pop
``gnt-node add``.
132 e41a1c0c Iustin Pop
133 e41a1c0c Iustin Pop
As for bug fixes:
134 e41a1c0c Iustin Pop
135 e41a1c0c Iustin Pop
- ``tools/cluster-merge`` has seen many fixes and is now enabled again
136 df3df936 Michael Hanselmann
- Fixed regression in RAPI/instance reinstall where all parameters were
137 e41a1c0c Iustin Pop
  required (instead of optional)
138 df3df936 Michael Hanselmann
- Fixed ``gnt-cluster repair-disk-sizes``, was broken since Ganeti 2.2
139 df3df936 Michael Hanselmann
- Fixed iallocator usage (offline nodes were not considered offline)
140 df3df936 Michael Hanselmann
- Fixed ``gnt-node list`` with respect to non-vm_capable nodes
141 df3df936 Michael Hanselmann
- Fixed hypervisor and OS parameter validation with respect to
142 e41a1c0c Iustin Pop
  non-vm_capable nodes
143 df3df936 Michael Hanselmann
- Fixed ``gnt-cluster verify`` with respect to offline nodes (mostly
144 e41a1c0c Iustin Pop
  cosmetic)
145 df3df936 Michael Hanselmann
- Fixed ``tools/listrunner`` with respect to agent-based usage
146 e41a1c0c Iustin Pop
147 e41a1c0c Iustin Pop
148 ec31a18f Iustin Pop
Version 2.4.0 rc1
149 ec31a18f Iustin Pop
-----------------
150 ec31a18f Iustin Pop
151 ec31a18f Iustin Pop
*(Released Fri,  4 Feb 2011)*
152 ec31a18f Iustin Pop
153 ec31a18f Iustin Pop
Many changes and fixes since the beta1 release. While there were some
154 ec31a18f Iustin Pop
internal changes, the code has been mostly stabilised for the RC
155 ec31a18f Iustin Pop
release.
156 ec31a18f Iustin Pop
157 ec31a18f Iustin Pop
Note: the dumb allocator was removed in this release, as it was not kept
158 ec31a18f Iustin Pop
up-to-date with the IAllocator protocol changes. It is recommended to
159 ec31a18f Iustin Pop
use the ``hail`` command from the ganeti-htools package.
160 ec31a18f Iustin Pop
161 ec31a18f Iustin Pop
Note: the 2.4 and up versions of Ganeti are not compatible with the
162 ec31a18f Iustin Pop
0.2.x branch of ganeti-htools. You need to upgrade to
163 ec31a18f Iustin Pop
ganeti-htools-0.3.0 (or later).
164 ec31a18f Iustin Pop
165 ec31a18f Iustin Pop
Regressions fixed from 2.3
166 ec31a18f Iustin Pop
~~~~~~~~~~~~~~~~~~~~~~~~~~
167 ec31a18f Iustin Pop
168 ec31a18f Iustin Pop
- Fixed the ``gnt-cluster verify-disks`` command
169 ec31a18f Iustin Pop
- Made ``gnt-cluster verify-disks`` work in parallel (as opposed to
170 ec31a18f Iustin Pop
  serially on nodes)
171 ec31a18f Iustin Pop
- Fixed disk adoption breakage
172 ec31a18f Iustin Pop
- Fixed wrong headers in instance listing for field aliases
173 ec31a18f Iustin Pop
174 ec31a18f Iustin Pop
Other bugs fixed
175 ec31a18f Iustin Pop
~~~~~~~~~~~~~~~~
176 ec31a18f Iustin Pop
177 ec31a18f Iustin Pop
- Fixed corner case in KVM handling of NICs
178 ec31a18f Iustin Pop
- Fixed many cases of wrong handling of non-vm_capable nodes
179 ec31a18f Iustin Pop
- Fixed a bug where a missing instance symlink was not possible to
180 ec31a18f Iustin Pop
  recreate with any ``gnt-*`` command (now ``gnt-instance
181 ec31a18f Iustin Pop
  activate-disks`` does it)
182 ec31a18f Iustin Pop
- Fixed the volume group name as reported by ``gnt-cluster
183 ec31a18f Iustin Pop
  verify-disks``
184 ec31a18f Iustin Pop
- Increased timeouts for the import-export code, hopefully leading to
185 ec31a18f Iustin Pop
  fewer aborts due network or instance timeouts
186 ec31a18f Iustin Pop
- Fixed bug in ``gnt-node list-storage``
187 ec31a18f Iustin Pop
- Fixed bug where not all daemons were started on cluster
188 ec31a18f Iustin Pop
  initialisation, but only at the first watcher run
189 ec31a18f Iustin Pop
- Fixed many bugs in the OOB implementation
190 ec31a18f Iustin Pop
- Fixed watcher behaviour in presence of instances with offline
191 ec31a18f Iustin Pop
  secondaries
192 ec31a18f Iustin Pop
- Fixed instance list output for instances running on the wrong node
193 ec31a18f Iustin Pop
- a few fixes to the cluster-merge tool, but it still cannot merge
194 ec31a18f Iustin Pop
  multi-node groups (currently it is not recommended to use this tool)
195 ec31a18f Iustin Pop
196 ec31a18f Iustin Pop
197 ec31a18f Iustin Pop
Improvements
198 ec31a18f Iustin Pop
~~~~~~~~~~~~
199 ec31a18f Iustin Pop
200 ec31a18f Iustin Pop
- Improved network configuration for the KVM hypervisor
201 ec31a18f Iustin Pop
- Added e1000 as a supported NIC for Xen-HVM
202 ec31a18f Iustin Pop
- Improved the lvmstrap tool to also be able to use partitions, as
203 ec31a18f Iustin Pop
  opposed to full disks
204 ec31a18f Iustin Pop
- Improved speed of disk wiping (the cluster parameter
205 ec31a18f Iustin Pop
  ``prealloc_wipe_disks``, so that it has a low impact on the total time
206 ec31a18f Iustin Pop
  of instance creations
207 ec31a18f Iustin Pop
- Added documentation for the OS parameters
208 ec31a18f Iustin Pop
- Changed ``gnt-instance deactivate-disks`` so that it can work if the
209 ec31a18f Iustin Pop
  hypervisor is not responding
210 ec31a18f Iustin Pop
- Added display of blacklisted and hidden OS information in
211 ec31a18f Iustin Pop
  ``gnt-cluster info``
212 ec31a18f Iustin Pop
- Extended ``gnt-cluster verify`` to also validate hypervisor, backend,
213 ec31a18f Iustin Pop
  NIC and node parameters, which might create problems with currently
214 ec31a18f Iustin Pop
  invalid (but undetected) configuration files, but prevents validation
215 ec31a18f Iustin Pop
  failures when unrelated parameters are modified
216 ec31a18f Iustin Pop
- Changed cluster initialisation to wait for the master daemon to become
217 ec31a18f Iustin Pop
  available
218 ec31a18f Iustin Pop
- Expanded the RAPI interface:
219 ec31a18f Iustin Pop
220 ec31a18f Iustin Pop
  - Added config redistribution resource
221 ec31a18f Iustin Pop
  - Added activation/deactivation of instance disks
222 ec31a18f Iustin Pop
  - Added export of console information
223 ec31a18f Iustin Pop
224 ec31a18f Iustin Pop
- Implemented log file reopening on SIGHUP, which allows using
225 ec31a18f Iustin Pop
  logrotate(8) for the Ganeti log files
226 ec31a18f Iustin Pop
- Added a basic OOB helper script as an example
227 ec31a18f Iustin Pop
228 ec31a18f Iustin Pop
229 3daa24ea Michael Hanselmann
Version 2.4.0 beta1
230 3daa24ea Michael Hanselmann
-------------------
231 fdd9ac5b Michael Hanselmann
232 a91f69c4 Michael Hanselmann
*(Released Fri, 14 Jan 2011)*
233 fdd9ac5b Michael Hanselmann
234 3daa24ea Michael Hanselmann
User-visible
235 3daa24ea Michael Hanselmann
~~~~~~~~~~~~
236 3daa24ea Michael Hanselmann
237 3daa24ea Michael Hanselmann
- Fixed timezone issues when formatting timestamps
238 3daa24ea Michael Hanselmann
- Added support for node groups, available via ``gnt-group`` and other
239 3daa24ea Michael Hanselmann
  commands
240 3daa24ea Michael Hanselmann
- Added out-of-band framework and management, see :doc:`design
241 3daa24ea Michael Hanselmann
  document <design-oob>`
242 3daa24ea Michael Hanselmann
- Removed support for roman numbers from ``gnt-node list`` and
243 3daa24ea Michael Hanselmann
  ``gnt-instance list``.
244 3daa24ea Michael Hanselmann
- Allowed modification of master network interface via ``gnt-cluster
245 3daa24ea Michael Hanselmann
  modify --master-netdev``
246 3daa24ea Michael Hanselmann
- Accept offline secondaries while shutting down instance disks
247 3daa24ea Michael Hanselmann
- Added ``blockdev_prefix`` parameter to Xen PVM and HVM hypervisors
248 3daa24ea Michael Hanselmann
- Added support for multiple LVM volume groups
249 3daa24ea Michael Hanselmann
- Avoid sorting nodes for ``gnt-node list`` if specific nodes are
250 3daa24ea Michael Hanselmann
  requested
251 3daa24ea Michael Hanselmann
- Added commands to list available fields:
252 3daa24ea Michael Hanselmann
253 3daa24ea Michael Hanselmann
  - ``gnt-node list-fields``
254 3daa24ea Michael Hanselmann
  - ``gnt-group list-fields``
255 3daa24ea Michael Hanselmann
  - ``gnt-instance list-fields``
256 3daa24ea Michael Hanselmann
257 3daa24ea Michael Hanselmann
- Updated documentation and man pages
258 3daa24ea Michael Hanselmann
259 3daa24ea Michael Hanselmann
Integration
260 3daa24ea Michael Hanselmann
~~~~~~~~~~~
261 3daa24ea Michael Hanselmann
262 fdd9ac5b Michael Hanselmann
- Moved ``rapi_users`` file into separate directory, now named
263 df3df936 Michael Hanselmann
  ``.../ganeti/rapi/users``, ``cfgupgrade`` moves the file and creates a
264 3daa24ea Michael Hanselmann
  symlink
265 3daa24ea Michael Hanselmann
- Added new tool for running commands on many machines,
266 3daa24ea Michael Hanselmann
  ``tools/ganeti-listrunner``
267 cc0dec7b Iustin Pop
- Implemented more verbose result in ``OpInstanceConsole`` opcode, also
268 3daa24ea Michael Hanselmann
  improving the ``gnt-instance console`` output
269 3daa24ea Michael Hanselmann
- Allowed customisation of disk index separator at ``configure`` time
270 3daa24ea Michael Hanselmann
- Export node group allocation policy to :doc:`iallocator <iallocator>`
271 3daa24ea Michael Hanselmann
- Added support for non-partitioned md disks in ``lvmstrap``
272 3daa24ea Michael Hanselmann
- Added script to gracefully power off KVM instances
273 3daa24ea Michael Hanselmann
- Split ``utils`` module into smaller parts
274 d7a08491 Michael Hanselmann
- Changed query operations to return more detailed information, e.g.
275 d7a08491 Michael Hanselmann
  whether an information is unavailable due to an offline node. To use
276 d7a08491 Michael Hanselmann
  this new functionality, the LUXI call ``Query`` must be used. Field
277 d7a08491 Michael Hanselmann
  information is now stored by the master daemon and can be retrieved
278 3daa24ea Michael Hanselmann
  using ``QueryFields``. Instances, nodes and groups can also be queried
279 3daa24ea Michael Hanselmann
  using the new opcodes ``OpQuery`` and ``OpQueryFields`` (not yet
280 3daa24ea Michael Hanselmann
  exposed via RAPI). The following commands make use of this
281 3daa24ea Michael Hanselmann
  infrastructure change:
282 3daa24ea Michael Hanselmann
283 3daa24ea Michael Hanselmann
  - ``gnt-group list``
284 3daa24ea Michael Hanselmann
  - ``gnt-group list-fields``
285 3daa24ea Michael Hanselmann
  - ``gnt-node list``
286 3daa24ea Michael Hanselmann
  - ``gnt-node list-fields``
287 3daa24ea Michael Hanselmann
  - ``gnt-instance list``
288 3daa24ea Michael Hanselmann
  - ``gnt-instance list-fields``
289 3daa24ea Michael Hanselmann
  - ``gnt-debug locks``
290 3daa24ea Michael Hanselmann
291 3daa24ea Michael Hanselmann
Remote API
292 3daa24ea Michael Hanselmann
~~~~~~~~~~
293 3daa24ea Michael Hanselmann
294 3daa24ea Michael Hanselmann
- New RAPI resources (see :doc:`rapi`):
295 3daa24ea Michael Hanselmann
296 3daa24ea Michael Hanselmann
  - ``/2/modify``
297 3daa24ea Michael Hanselmann
  - ``/2/groups``
298 3daa24ea Michael Hanselmann
  - ``/2/groups/[group_name]``
299 3daa24ea Michael Hanselmann
  - ``/2/groups/[group_name]/assign-nodes``
300 3daa24ea Michael Hanselmann
  - ``/2/groups/[group_name]/modify``
301 3daa24ea Michael Hanselmann
  - ``/2/groups/[group_name]/rename``
302 3daa24ea Michael Hanselmann
  - ``/2/instances/[instance_name]/disk/[disk_index]/grow``
303 3daa24ea Michael Hanselmann
304 3daa24ea Michael Hanselmann
- RAPI changes:
305 3daa24ea Michael Hanselmann
306 3daa24ea Michael Hanselmann
  - Implemented ``no_install`` for instance creation
307 3daa24ea Michael Hanselmann
  - Implemented OS parameters for instance reinstallation, allowing
308 3daa24ea Michael Hanselmann
    use of special settings on reinstallation (e.g. for preserving data)
309 3daa24ea Michael Hanselmann
310 3daa24ea Michael Hanselmann
Misc
311 3daa24ea Michael Hanselmann
~~~~
312 3daa24ea Michael Hanselmann
313 3daa24ea Michael Hanselmann
- Added IPv6 support in import/export
314 3daa24ea Michael Hanselmann
- Pause DRBD synchronization while wiping disks on instance creation
315 3daa24ea Michael Hanselmann
- Updated unittests and QA scripts
316 3daa24ea Michael Hanselmann
- Improved network parameters passed to KVM
317 3daa24ea Michael Hanselmann
- Converted man pages from docbook to reStructuredText
318 fdd9ac5b Michael Hanselmann
319 fdd9ac5b Michael Hanselmann
320 bb2dc35a Michael Hanselmann
Version 2.3.1
321 bb2dc35a Michael Hanselmann
-------------
322 bb2dc35a Michael Hanselmann
323 bb2dc35a Michael Hanselmann
*(Released Mon, 20 Dec 2010)*
324 bb2dc35a Michael Hanselmann
325 bb2dc35a Michael Hanselmann
Released version 2.3.1~rc1 without any changes.
326 bb2dc35a Michael Hanselmann
327 bb2dc35a Michael Hanselmann
328 563d5e72 Michael Hanselmann
Version 2.3.1 rc1
329 563d5e72 Michael Hanselmann
-----------------
330 563d5e72 Michael Hanselmann
331 563d5e72 Michael Hanselmann
*(Released Wed, 1 Dec 2010)*
332 563d5e72 Michael Hanselmann
333 563d5e72 Michael Hanselmann
- impexpd: Disable OpenSSL compression in socat if possible (backport
334 563d5e72 Michael Hanselmann
  from master, commit e90739d625b, see :doc:`installation guide
335 563d5e72 Michael Hanselmann
  <install-quick>` for details)
336 563d5e72 Michael Hanselmann
- Changed unittest coverage report to exclude test scripts
337 563d5e72 Michael Hanselmann
- Added script to check version format
338 563d5e72 Michael Hanselmann
339 563d5e72 Michael Hanselmann
340 7c324b88 Michael Hanselmann
Version 2.3.0
341 7c324b88 Michael Hanselmann
-------------
342 7c324b88 Michael Hanselmann
343 7c324b88 Michael Hanselmann
*(Released Wed, 1 Dec 2010)*
344 7c324b88 Michael Hanselmann
345 7c324b88 Michael Hanselmann
Released version 2.3.0~rc1 without any changes.
346 7c324b88 Michael Hanselmann
347 7c324b88 Michael Hanselmann
348 ca6c2dcd Iustin Pop
Version 2.3.0 rc1
349 ca6c2dcd Iustin Pop
-----------------
350 ca6c2dcd Iustin Pop
351 ca6c2dcd Iustin Pop
*(Released Fri, 19 Nov 2010)*
352 ca6c2dcd Iustin Pop
353 ca6c2dcd Iustin Pop
A number of bugfixes and documentation updates:
354 ca6c2dcd Iustin Pop
355 ca6c2dcd Iustin Pop
- Update ganeti-os-interface documentation
356 ca6c2dcd Iustin Pop
- Fixed a bug related to duplicate MACs or similar items which should be
357 ca6c2dcd Iustin Pop
  unique
358 ca6c2dcd Iustin Pop
- Fix breakage in OS state modify
359 ca6c2dcd Iustin Pop
- Reinstall instance: disallow offline secondaries (fixes bug related to
360 ca6c2dcd Iustin Pop
  OS changing but reinstall failing)
361 ca6c2dcd Iustin Pop
- plus all the other fixes between 2.2.1 and 2.2.2
362 ca6c2dcd Iustin Pop
363 ca6c2dcd Iustin Pop
364 261297a9 Michael Hanselmann
Version 2.3.0 rc0
365 261297a9 Michael Hanselmann
-----------------
366 960d0825 René Nussbaumer
367 a8ee6e94 Michael Hanselmann
*(Released Tue, 2 Nov 2010)*
368 960d0825 René Nussbaumer
369 515d87eb Michael Hanselmann
- Fixed clearing of the default iallocator using ``gnt-cluster modify``
370 515d87eb Michael Hanselmann
- Fixed master failover race with watcher
371 515d87eb Michael Hanselmann
- Fixed a bug in ``gnt-node modify`` which could lead to an inconsistent
372 515d87eb Michael Hanselmann
  configuration
373 515d87eb Michael Hanselmann
- Accept previously stopped instance for export with instance removal
374 515d87eb Michael Hanselmann
- Simplify and extend the environment variables for instance OS scripts
375 515d87eb Michael Hanselmann
- Added new node flags, ``master_capable`` and ``vm_capable``
376 515d87eb Michael Hanselmann
- Added optional instance disk wiping prior during allocation. This is a
377 515d87eb Michael Hanselmann
  cluster-wide option and can be set/modified using
378 515d87eb Michael Hanselmann
  ``gnt-cluster {init,modify} --prealloc-wipe-disks``.
379 515d87eb Michael Hanselmann
- Added IPv6 support, see :doc:`design document <design-2.3>` and
380 515d87eb Michael Hanselmann
  :doc:`install-quick`
381 515d87eb Michael Hanselmann
- Added a new watcher option (``--ignore-pause``)
382 515d87eb Michael Hanselmann
- Added option to ignore offline node on instance start/stop
383 515d87eb Michael Hanselmann
  (``--ignore-offline``)
384 515d87eb Michael Hanselmann
- Allow overriding OS parameters with ``gnt-instance reinstall``
385 a8ee6e94 Michael Hanselmann
- Added ability to change node's secondary IP address using ``gnt-node
386 a8ee6e94 Michael Hanselmann
  modify``
387 515d87eb Michael Hanselmann
- Implemented privilege separation for all daemons except
388 515d87eb Michael Hanselmann
  ``ganeti-noded``, see ``configure`` options
389 515d87eb Michael Hanselmann
- Complain if an instance's disk is marked faulty in ``gnt-cluster
390 515d87eb Michael Hanselmann
  verify``
391 515d87eb Michael Hanselmann
- Implemented job priorities (see ``ganeti(7)`` manpage)
392 515d87eb Michael Hanselmann
- Ignore failures while shutting down instances during failover from
393 515d87eb Michael Hanselmann
  offline node
394 515d87eb Michael Hanselmann
- Exit daemon's bootstrap process only once daemon is ready
395 f2af0bec Iustin Pop
- Export more information via ``LUInstanceQuery``/remote API
396 515d87eb Michael Hanselmann
- Improved documentation, QA and unittests
397 515d87eb Michael Hanselmann
- RAPI daemon now watches ``rapi_users`` all the time and doesn't need a
398 515d87eb Michael Hanselmann
  restart if the file was created or changed
399 515d87eb Michael Hanselmann
- Added LUXI protocol version sent with each request and response,
400 515d87eb Michael Hanselmann
  allowing detection of server/client mismatches
401 261297a9 Michael Hanselmann
- Moved the Python scripts among gnt-* and ganeti-* into modules
402 515d87eb Michael Hanselmann
- Moved all code related to setting up SSH to an external script,
403 515d87eb Michael Hanselmann
  ``setup-ssh``
404 515d87eb Michael Hanselmann
- Infrastructure changes for node group support in future versions
405 515d87eb Michael Hanselmann
406 960d0825 René Nussbaumer
407 2596526d Iustin Pop
Version 2.2.2
408 2596526d Iustin Pop
-------------
409 2596526d Iustin Pop
410 2596526d Iustin Pop
*(Released Fri, 19 Nov 2010)*
411 2596526d Iustin Pop
412 2596526d Iustin Pop
A few small bugs fixed, and some improvements to the build system:
413 2596526d Iustin Pop
414 2596526d Iustin Pop
- Fix documentation regarding conversion to drbd
415 2596526d Iustin Pop
- Fix validation of parameters in cluster modify (``gnt-cluster modify
416 2596526d Iustin Pop
  -B``)
417 2596526d Iustin Pop
- Fix error handling in node modify with multiple changes
418 2596526d Iustin Pop
- Allow remote imports without checked names
419 2596526d Iustin Pop
420 2596526d Iustin Pop
421 dcb95afb Michael Hanselmann
Version 2.2.1
422 dcb95afb Michael Hanselmann
-------------
423 dcb95afb Michael Hanselmann
424 dcb95afb Michael Hanselmann
*(Released Tue, 19 Oct 2010)*
425 dcb95afb Michael Hanselmann
426 dcb95afb Michael Hanselmann
- Disable SSL session ID cache in RPC client
427 dcb95afb Michael Hanselmann
428 dcb95afb Michael Hanselmann
429 24440be4 Iustin Pop
Version 2.2.1 rc1
430 24440be4 Iustin Pop
-----------------
431 24440be4 Iustin Pop
432 24440be4 Iustin Pop
*(Released Thu, 14 Oct 2010)*
433 24440be4 Iustin Pop
434 24440be4 Iustin Pop
- Fix interaction between Curl/GnuTLS and the Python's HTTP server
435 24440be4 Iustin Pop
  (thanks Apollon Oikonomopoulos!), finally allowing the use of Curl
436 24440be4 Iustin Pop
  with GnuTLS
437 24440be4 Iustin Pop
- Fix problems with interaction between Curl and Python's HTTP server,
438 24440be4 Iustin Pop
  resulting in increased speed in many RPC calls
439 24440be4 Iustin Pop
- Improve our release script to prevent breakage with older aclocal and
440 24440be4 Iustin Pop
  Python 2.6
441 24440be4 Iustin Pop
442 dcb95afb Michael Hanselmann
443 fad3096a Michael Hanselmann
Version 2.2.1 rc0
444 fad3096a Michael Hanselmann
-----------------
445 fad3096a Michael Hanselmann
446 fad3096a Michael Hanselmann
*(Released Thu, 7 Oct 2010)*
447 fad3096a Michael Hanselmann
448 df3df936 Michael Hanselmann
- Fixed issue 125, replace hardcoded "xenvg" in ``gnt-cluster`` with
449 fad3096a Michael Hanselmann
  value retrieved from master
450 fad3096a Michael Hanselmann
- Added support for blacklisted or hidden OS definitions
451 fad3096a Michael Hanselmann
- Added simple lock monitor (accessible via (``gnt-debug locks``)
452 fad3096a Michael Hanselmann
- Added support for -mem-path in KVM hypervisor abstraction layer
453 fad3096a Michael Hanselmann
- Allow overriding instance parameters in tool for inter-cluster
454 fad3096a Michael Hanselmann
  instance moves (``tools/move-instance``)
455 fad3096a Michael Hanselmann
- Improved opcode summaries (e.g. in ``gnt-job list``)
456 fad3096a Michael Hanselmann
- Improve consistency of OS listing by sorting it
457 fad3096a Michael Hanselmann
- Documentation updates
458 fad3096a Michael Hanselmann
459 fad3096a Michael Hanselmann
460 bf21f985 Guido Trotter
Version 2.2.0.1
461 bf21f985 Guido Trotter
---------------
462 bf21f985 Guido Trotter
463 bf21f985 Guido Trotter
*(Released Fri, 8 Oct 2010)*
464 bf21f985 Guido Trotter
465 bf21f985 Guido Trotter
- Rebuild with a newer autotools version, to fix python 2.6 compatibility
466 bf21f985 Guido Trotter
467 bf21f985 Guido Trotter
468 83e90c39 Michael Hanselmann
Version 2.2.0
469 83e90c39 Michael Hanselmann
-------------
470 83e90c39 Michael Hanselmann
471 83e90c39 Michael Hanselmann
*(Released Mon, 4 Oct 2010)*
472 83e90c39 Michael Hanselmann
473 83e90c39 Michael Hanselmann
- Fixed regression in ``gnt-instance rename``
474 83e90c39 Michael Hanselmann
475 83e90c39 Michael Hanselmann
476 28b5de4d Michael Hanselmann
Version 2.2.0 rc2
477 28b5de4d Michael Hanselmann
-----------------
478 28b5de4d Michael Hanselmann
479 f64de30f Michael Hanselmann
*(Released Wed, 22 Sep 2010)*
480 28b5de4d Michael Hanselmann
481 28b5de4d Michael Hanselmann
- Fixed OS_VARIANT variable for OS scripts
482 28b5de4d Michael Hanselmann
- Fixed cluster tag operations via RAPI
483 28b5de4d Michael Hanselmann
- Made ``setup-ssh`` exit with non-zero code if an error occurred
484 28b5de4d Michael Hanselmann
- Disabled RAPI CA checks in watcher
485 28b5de4d Michael Hanselmann
486 28b5de4d Michael Hanselmann
487 0849f36b Michael Hanselmann
Version 2.2.0 rc1
488 0849f36b Michael Hanselmann
-----------------
489 0849f36b Michael Hanselmann
490 0849f36b Michael Hanselmann
*(Released Mon, 23 Aug 2010)*
491 0849f36b Michael Hanselmann
492 0849f36b Michael Hanselmann
- Support DRBD versions of the format "a.b.c.d"
493 0849f36b Michael Hanselmann
- Updated manpages
494 0849f36b Michael Hanselmann
- Re-introduce support for usage from multiple threads in RAPI client
495 0849f36b Michael Hanselmann
- Instance renames and modify via RAPI
496 0849f36b Michael Hanselmann
- Work around race condition between processing and archival in job
497 0849f36b Michael Hanselmann
  queue
498 0849f36b Michael Hanselmann
- Mark opcodes following failed one as failed, too
499 0849f36b Michael Hanselmann
- Job field ``lock_status`` was removed due to difficulties making it
500 0849f36b Michael Hanselmann
  work with the changed job queue in Ganeti 2.2; a better way to monitor
501 0849f36b Michael Hanselmann
  locks is expected for a later 2.2.x release
502 0849f36b Michael Hanselmann
- Fixed dry-run behaviour with many commands
503 0849f36b Michael Hanselmann
- Support ``ssh-agent`` again when adding nodes
504 0849f36b Michael Hanselmann
- Many additional bugfixes
505 0849f36b Michael Hanselmann
506 0849f36b Michael Hanselmann
507 529a8d17 Iustin Pop
Version 2.2.0 rc0
508 529a8d17 Iustin Pop
-----------------
509 529a8d17 Iustin Pop
510 41c44dcf Iustin Pop
*(Released Fri, 30 Jul 2010)*
511 529a8d17 Iustin Pop
512 529a8d17 Iustin Pop
Important change: the internal RPC mechanism between Ganeti nodes has
513 529a8d17 Iustin Pop
changed from using a home-grown http library (based on the Python base
514 529a8d17 Iustin Pop
libraries) to use the PycURL library. This requires that PycURL is
515 529a8d17 Iustin Pop
installed on nodes. Please note that on Debian/Ubuntu, PycURL is linked
516 529a8d17 Iustin Pop
against GnuTLS by default. cURL's support for GnuTLS had known issues
517 529a8d17 Iustin Pop
before cURL 7.21.0 and we recommend using the latest cURL release or
518 529a8d17 Iustin Pop
linking against OpenSSL. Most other distributions already link PycURL
519 529a8d17 Iustin Pop
and cURL against OpenSSL. The command::
520 529a8d17 Iustin Pop
521 529a8d17 Iustin Pop
  python -c 'import pycurl; print pycurl.version'
522 529a8d17 Iustin Pop
523 529a8d17 Iustin Pop
can be used to determine the libraries PycURL and cURL are linked
524 529a8d17 Iustin Pop
against.
525 529a8d17 Iustin Pop
526 529a8d17 Iustin Pop
Other significant changes:
527 529a8d17 Iustin Pop
528 529a8d17 Iustin Pop
- Rewrote much of the internals of the job queue, in order to achieve
529 529a8d17 Iustin Pop
  better parallelism; this decouples job query operations from the job
530 529a8d17 Iustin Pop
  processing, and it should allow much nicer behaviour of the master
531 529a8d17 Iustin Pop
  daemon under load, and it also has uncovered some long-standing bugs
532 529a8d17 Iustin Pop
  related to the job serialisation (now fixed)
533 529a8d17 Iustin Pop
- Added a default iallocator setting to the cluster parameters,
534 529a8d17 Iustin Pop
  eliminating the need to always pass nodes or an iallocator for
535 529a8d17 Iustin Pop
  operations that require selection of new node(s)
536 529a8d17 Iustin Pop
- Added experimental support for the LXC virtualization method
537 529a8d17 Iustin Pop
- Added support for OS parameters, which allows the installation of
538 529a8d17 Iustin Pop
  instances to pass parameter to OS scripts in order to customise the
539 529a8d17 Iustin Pop
  instance
540 529a8d17 Iustin Pop
- Added a hypervisor parameter controlling the migration type (live or
541 529a8d17 Iustin Pop
  non-live), since hypervisors have various levels of reliability; this
542 529a8d17 Iustin Pop
  has renamed the 'live' parameter to 'mode'
543 529a8d17 Iustin Pop
- Added a cluster parameter ``reserved_lvs`` that denotes reserved
544 529a8d17 Iustin Pop
  logical volumes, meaning that cluster verify will ignore them and not
545 529a8d17 Iustin Pop
  flag their presence as errors
546 529a8d17 Iustin Pop
- The watcher will now reset the error count for failed instances after
547 529a8d17 Iustin Pop
  8 hours, thus allowing self-healing if the problem that caused the
548 529a8d17 Iustin Pop
  instances to be down/fail to start has cleared in the meantime
549 529a8d17 Iustin Pop
- Added a cluster parameter ``drbd_usermode_helper`` that makes Ganeti
550 529a8d17 Iustin Pop
  check for, and warn, if the drbd module parameter ``usermode_helper``
551 529a8d17 Iustin Pop
  is not consistent with the cluster-wide setting; this is needed to
552 529a8d17 Iustin Pop
  make diagnose easier of failed drbd creations
553 529a8d17 Iustin Pop
- Started adding base IPv6 support, but this is not yet
554 529a8d17 Iustin Pop
  enabled/available for use
555 529a8d17 Iustin Pop
- Rename operations (cluster, instance) will now return the new name,
556 529a8d17 Iustin Pop
  which is especially useful if a short name was passed in
557 529a8d17 Iustin Pop
- Added support for instance migration in RAPI
558 529a8d17 Iustin Pop
- Added a tool to pre-configure nodes for the SSH setup, before joining
559 529a8d17 Iustin Pop
  them to the cluster; this will allow in the future a simplified model
560 529a8d17 Iustin Pop
  for node joining (but not yet fully enabled in 2.2); this needs the
561 529a8d17 Iustin Pop
  paramiko python library
562 529a8d17 Iustin Pop
- Fixed handling of name-resolving errors
563 529a8d17 Iustin Pop
- Fixed consistency of job results on the error path
564 529a8d17 Iustin Pop
- Fixed master-failover race condition when executed multiple times in
565 529a8d17 Iustin Pop
  sequence
566 529a8d17 Iustin Pop
- Fixed many bugs related to the job queue (mostly introduced during the
567 529a8d17 Iustin Pop
  2.2 development cycle, so not all are impacting 2.1)
568 529a8d17 Iustin Pop
- Fixed instance migration with missing disk symlinks
569 529a8d17 Iustin Pop
- Fixed handling of unknown jobs in ``gnt-job archive``
570 529a8d17 Iustin Pop
- And many other small fixes/improvements
571 529a8d17 Iustin Pop
572 529a8d17 Iustin Pop
Internal changes:
573 529a8d17 Iustin Pop
574 529a8d17 Iustin Pop
- Enhanced both the unittest and the QA coverage
575 529a8d17 Iustin Pop
- Switched the opcode validation to a generic model, and extended the
576 529a8d17 Iustin Pop
  validation to all opcode parameters
577 529a8d17 Iustin Pop
- Changed more parts of the code that write shell scripts to use the
578 529a8d17 Iustin Pop
  same class for this
579 529a8d17 Iustin Pop
- Switched the master daemon to use the asyncore library for the Luxi
580 529a8d17 Iustin Pop
  server endpoint
581 529a8d17 Iustin Pop
582 529a8d17 Iustin Pop
583 a0a470fa Michael Hanselmann
Version 2.2.0 beta 0
584 a0a470fa Michael Hanselmann
--------------------
585 a0a470fa Michael Hanselmann
586 a0a470fa Michael Hanselmann
*(Released Thu, 17 Jun 2010)*
587 ab221ddf Michael Hanselmann
588 e0897adf Michael Hanselmann
- Added tool (``move-instance``) and infrastructure to move instances
589 e0897adf Michael Hanselmann
  between separate clusters (see :doc:`separate documentation
590 e0897adf Michael Hanselmann
  <move-instance>` and :doc:`design document <design-2.2>`)
591 e0897adf Michael Hanselmann
- Added per-request RPC timeout
592 ab221ddf Michael Hanselmann
- RAPI now requires a Content-Type header for requests with a body (e.g.
593 ab221ddf Michael Hanselmann
  ``PUT`` or ``POST``) which must be set to ``application/json`` (see
594 a4978169 Michael Hanselmann
  :rfc:`2616` (HTTP/1.1), section 7.2.1)
595 e0897adf Michael Hanselmann
- ``ganeti-watcher`` attempts to restart ``ganeti-rapi`` if RAPI is not
596 e0897adf Michael Hanselmann
  reachable
597 e0897adf Michael Hanselmann
- Implemented initial support for running Ganeti daemons as separate
598 e0897adf Michael Hanselmann
  users, see configure-time flags ``--with-user-prefix`` and
599 e0897adf Michael Hanselmann
  ``--with-group-prefix`` (only ``ganeti-rapi`` is supported at this
600 e0897adf Michael Hanselmann
  time)
601 e0897adf Michael Hanselmann
- Instances can be removed after export (``gnt-backup export
602 e0897adf Michael Hanselmann
  --remove-instance``)
603 e0897adf Michael Hanselmann
- Self-signed certificates generated by Ganeti now use a 2048 bit RSA
604 e0897adf Michael Hanselmann
  key (instead of 1024 bit)
605 e0897adf Michael Hanselmann
- Added new cluster configuration file for cluster domain secret
606 e0897adf Michael Hanselmann
- Import/export now use SSL instead of SSH
607 e0897adf Michael Hanselmann
- Added support for showing estimated time when exporting an instance,
608 e0897adf Michael Hanselmann
  see the ``ganeti-os-interface(7)`` manpage and look for
609 e0897adf Michael Hanselmann
  ``EXP_SIZE_FD``
610 ab221ddf Michael Hanselmann
611 2596526d Iustin Pop
612 2596526d Iustin Pop
Version 2.1.8
613 2596526d Iustin Pop
-------------
614 2596526d Iustin Pop
615 2596526d Iustin Pop
*(Released Tue, 16 Nov 2010)*
616 2596526d Iustin Pop
617 2596526d Iustin Pop
Some more bugfixes. Unless critical bugs occur, this will be the last
618 2596526d Iustin Pop
2.1 release:
619 2596526d Iustin Pop
620 2596526d Iustin Pop
- Fix case of MAC special-values
621 2596526d Iustin Pop
- Fix mac checker regex
622 df3df936 Michael Hanselmann
- backend: Fix typo causing "out of range" error
623 2596526d Iustin Pop
- Add missing --units in gnt-instance list man page
624 2596526d Iustin Pop
625 2596526d Iustin Pop
626 6845d276 Guido Trotter
Version 2.1.7
627 6845d276 Guido Trotter
-------------
628 6845d276 Guido Trotter
629 6845d276 Guido Trotter
*(Released Tue, 24 Aug 2010)*
630 6845d276 Guido Trotter
631 6845d276 Guido Trotter
Bugfixes only:
632 6845d276 Guido Trotter
  - Don't ignore secondary node silently on non-mirrored disk templates
633 6845d276 Guido Trotter
    (issue 113)
634 6845d276 Guido Trotter
  - Fix --master-netdev arg name in gnt-cluster(8) (issue 114)
635 6845d276 Guido Trotter
  - Fix usb_mouse parameter breaking with vnc_console (issue 109)
636 6845d276 Guido Trotter
  - Properly document the usb_mouse parameter
637 6845d276 Guido Trotter
  - Fix path in ganeti-rapi(8) (issue 116)
638 6845d276 Guido Trotter
  - Adjust error message when the ganeti user's .ssh directory is
639 6845d276 Guido Trotter
    missing
640 6845d276 Guido Trotter
  - Add same-node-check when changing the disk template to drbd
641 6845d276 Guido Trotter
642 920a91bf Michael Hanselmann
643 ae828011 Guido Trotter
Version 2.1.6
644 ae828011 Guido Trotter
-------------
645 ae828011 Guido Trotter
646 ae828011 Guido Trotter
*(Released Fri, 16 Jul 2010)*
647 ae828011 Guido Trotter
648 ae828011 Guido Trotter
Bugfixes only:
649 ae828011 Guido Trotter
  - Add an option to only select some reboot types during qa/burnin.
650 ae828011 Guido Trotter
    (on some hypervisors consequent reboots are not supported)
651 ae828011 Guido Trotter
  - Fix infrequent race condition in master failover. Sometimes the old
652 ae828011 Guido Trotter
    master ip address would be still detected as up for a short time
653 ae828011 Guido Trotter
    after it was removed, causing failover to fail.
654 ae828011 Guido Trotter
  - Decrease mlockall warnings when the ctypes module is missing. On
655 ae828011 Guido Trotter
    Python 2.4 we support running even if no ctypes module is installed,
656 ae828011 Guido Trotter
    but we were too verbose about this issue.
657 ae828011 Guido Trotter
  - Fix building on old distributions, on which man doesn't have a
658 ae828011 Guido Trotter
    --warnings option.
659 ae828011 Guido Trotter
  - Fix RAPI not to ignore the MAC address on instance creation
660 ae828011 Guido Trotter
  - Implement the old instance creation format in the RAPI client.
661 ae828011 Guido Trotter
662 ae828011 Guido Trotter
663 71cba20b Guido Trotter
Version 2.1.5
664 71cba20b Guido Trotter
-------------
665 71cba20b Guido Trotter
666 1d4c743d Guido Trotter
*(Released Thu, 01 Jul 2010)*
667 71cba20b Guido Trotter
668 71cba20b Guido Trotter
A small bugfix release:
669 71cba20b Guido Trotter
  - Fix disk adoption: broken by strict --disk option checking in 2.1.4
670 71cba20b Guido Trotter
  - Fix batch-create: broken in the whole 2.1 series due to a lookup on
671 71cba20b Guido Trotter
    a non-existing option
672 71cba20b Guido Trotter
  - Fix instance create: the --force-variant option was ignored
673 1d4c743d Guido Trotter
  - Improve pylint 0.21 compatibility and warnings with Python 2.6
674 1d4c743d Guido Trotter
  - Fix modify node storage with non-FQDN arguments
675 1d4c743d Guido Trotter
  - Fix RAPI client to authenticate under Python 2.6 when used
676 1d4c743d Guido Trotter
    for more than 5 requests needing authentication
677 1d4c743d Guido Trotter
  - Fix gnt-instance modify -t (storage) giving a wrong error message
678 1d4c743d Guido Trotter
    when converting a non-shutdown drbd instance to plain
679 71cba20b Guido Trotter
680 801b6a33 Guido Trotter
681 c1a25b88 Guido Trotter
Version 2.1.4
682 c1a25b88 Guido Trotter
-------------
683 c1a25b88 Guido Trotter
684 3ef56ab6 Guido Trotter
*(Released Fri, 18 Jun 2010)*
685 c1a25b88 Guido Trotter
686 c1a25b88 Guido Trotter
A small bugfix release:
687 c1a25b88 Guido Trotter
688 c1a25b88 Guido Trotter
  - Fix live migration of KVM instances started with older Ganeti
689 c1a25b88 Guido Trotter
    versions which had fewer hypervisor parameters
690 c1a25b88 Guido Trotter
  - Fix gnt-instance grow-disk on down instances
691 c1a25b88 Guido Trotter
  - Fix an error-reporting bug during instance migration
692 c1a25b88 Guido Trotter
  - Better checking of the ``--net`` and ``--disk`` values, to avoid
693 c1a25b88 Guido Trotter
    silently ignoring broken ones
694 c1a25b88 Guido Trotter
  - Fix an RPC error reporting bug affecting, for example, RAPI client
695 c1a25b88 Guido Trotter
    users
696 c1a25b88 Guido Trotter
  - Fix bug triggered by different API version os-es on different nodes
697 c1a25b88 Guido Trotter
  - Fix a bug in instance startup with custom hvparams: OS level
698 c1a25b88 Guido Trotter
    parameters would fail to be applied.
699 3ef56ab6 Guido Trotter
  - Fix the RAPI client under Python 2.6 (but more work is needed to
700 3ef56ab6 Guido Trotter
    make it work completely well with OpenSSL)
701 3ef56ab6 Guido Trotter
  - Fix handling of errors when resolving names from DNS
702 c1a25b88 Guido Trotter
703 626f4e45 Guido Trotter
704 14d91053 Guido Trotter
Version 2.1.3
705 14d91053 Guido Trotter
-------------
706 14d91053 Guido Trotter
707 7cf722ea Guido Trotter
*(Released Thu, 3 Jun 2010)*
708 14d91053 Guido Trotter
709 14d91053 Guido Trotter
A medium sized development cycle. Some new features, and some
710 14d91053 Guido Trotter
fixes/small improvements/cleanups.
711 14d91053 Guido Trotter
712 14d91053 Guido Trotter
Significant features
713 14d91053 Guido Trotter
~~~~~~~~~~~~~~~~~~~~
714 14d91053 Guido Trotter
715 14d91053 Guido Trotter
The node deamon now tries to mlock itself into memory, unless the
716 14d91053 Guido Trotter
``--no-mlock`` flag is passed. It also doesn't fail if it can't write
717 14d91053 Guido Trotter
its logs, and falls back to console logging. This allows emergency
718 14d91053 Guido Trotter
features such as ``gnt-node powercycle`` to work even in the event of a
719 14d91053 Guido Trotter
broken node disk (tested offlining the disk hosting the node's
720 722702e3 Guido Trotter
filesystem and dropping its memory caches; don't try this at home)
721 14d91053 Guido Trotter
722 14d91053 Guido Trotter
KVM: add vhost-net acceleration support. It can be tested with a new
723 14d91053 Guido Trotter
enough version of the kernel and of qemu-kvm.
724 14d91053 Guido Trotter
725 14d91053 Guido Trotter
KVM: Add instance chrooting feature. If you use privilege dropping for
726 14d91053 Guido Trotter
your VMs you can also now force them to chroot to an empty directory,
727 14d91053 Guido Trotter
before starting the emulated guest.
728 14d91053 Guido Trotter
729 14d91053 Guido Trotter
KVM: Add maximum migration bandwith and maximum downtime tweaking
730 14d91053 Guido Trotter
support (requires a new-enough version of qemu-kvm).
731 14d91053 Guido Trotter
732 14d91053 Guido Trotter
Cluster verify will now warn if the master node doesn't have the master
733 14d91053 Guido Trotter
ip configured on it.
734 14d91053 Guido Trotter
735 14d91053 Guido Trotter
Add a new (incompatible) instance creation request format to RAPI which
736 14d91053 Guido Trotter
supports all parameters (previously only a subset was supported, and it
737 14d91053 Guido Trotter
wasn't possible to extend the old format to accomodate all the new
738 14d91053 Guido Trotter
features. The old format is still supported, and a client can check for
739 14d91053 Guido Trotter
this feature, before using it, by checking for its presence in the
740 14d91053 Guido Trotter
``features`` RAPI resource.
741 14d91053 Guido Trotter
742 14d91053 Guido Trotter
Now with ancient latin support. Try it passing the ``--roman`` option to
743 722702e3 Guido Trotter
``gnt-instance info``, ``gnt-cluster info`` or ``gnt-node list``
744 722702e3 Guido Trotter
(requires the python-roman module to be installed, in order to work).
745 14d91053 Guido Trotter
746 14d91053 Guido Trotter
Other changes
747 14d91053 Guido Trotter
~~~~~~~~~~~~~
748 14d91053 Guido Trotter
749 14d91053 Guido Trotter
As usual many internal code refactorings, documentation updates, and
750 14d91053 Guido Trotter
such. Among others:
751 14d91053 Guido Trotter
752 14d91053 Guido Trotter
  - Lots of improvements and cleanups to the experimental Remote API
753 14d91053 Guido Trotter
    (RAPI) client library.
754 14d91053 Guido Trotter
  - A new unit test suite for the core daemon libraries.
755 14d91053 Guido Trotter
  - A fix to creating missing directories makes sure the umask is not
756 14d91053 Guido Trotter
    applied anymore. This enforces the same directory permissions
757 14d91053 Guido Trotter
    everywhere.
758 14d91053 Guido Trotter
  - Better handling terminating daemons with ctrl+c (used when running
759 14d91053 Guido Trotter
    them in debugging mode).
760 14d91053 Guido Trotter
  - Fix a race condition in live migrating a KVM instance, when stat()
761 14d91053 Guido Trotter
    on the old proc status file returned EINVAL, which is an unexpected
762 14d91053 Guido Trotter
    value.
763 1de45c78 Guido Trotter
  - Fixed manpage checking with newer man and utf-8 charachters. But now
764 1de45c78 Guido Trotter
    you need the en_US.UTF-8 locale enabled to build Ganeti from git.
765 14d91053 Guido Trotter
766 14d91053 Guido Trotter
767 23f983f4 Guido Trotter
Version 2.1.2.1
768 23f983f4 Guido Trotter
---------------
769 23f983f4 Guido Trotter
770 23f983f4 Guido Trotter
*(Released Fri, 7 May 2010)*
771 23f983f4 Guido Trotter
772 23f983f4 Guido Trotter
Fix a bug which prevented untagged KVM instances from starting.
773 23f983f4 Guido Trotter
774 507fd05a Guido Trotter
775 ba538816 Iustin Pop
Version 2.1.2
776 ba538816 Iustin Pop
-------------
777 ba538816 Iustin Pop
778 ace6cbe8 Iustin Pop
*(Released Fri, 7 May 2010)*
779 ba538816 Iustin Pop
780 ba538816 Iustin Pop
Another release with a long development cycle, during which many
781 ba538816 Iustin Pop
different features were added.
782 ba538816 Iustin Pop
783 ba538816 Iustin Pop
Significant features
784 ba538816 Iustin Pop
~~~~~~~~~~~~~~~~~~~~
785 ba538816 Iustin Pop
786 ba538816 Iustin Pop
The KVM hypervisor now can run the individual instances as non-root, to
787 ba538816 Iustin Pop
reduce the impact of a VM being hijacked due to bugs in the
788 ba538816 Iustin Pop
hypervisor. It is possible to run all instances as a single (non-root)
789 ba538816 Iustin Pop
user, to manually specify a user for each instance, or to dynamically
790 ba538816 Iustin Pop
allocate a user out of a cluster-wide pool to each instance, with the
791 ba538816 Iustin Pop
guarantee that no two instances will run under the same user ID on any
792 ba538816 Iustin Pop
given node.
793 ba538816 Iustin Pop
794 ba538816 Iustin Pop
An experimental RAPI client library, that can be used standalone
795 ba538816 Iustin Pop
(without the other Ganeti libraries), is provided in the source tree as
796 ba538816 Iustin Pop
``lib/rapi/client.py``. Note this client might change its interface in
797 ba538816 Iustin Pop
the future, as we iterate on its capabilities.
798 ba538816 Iustin Pop
799 ba538816 Iustin Pop
A new command, ``gnt-cluster renew-crypto`` has been added to easily
800 ba538816 Iustin Pop
replace the cluster's certificates and crypto keys. This might help in
801 ba538816 Iustin Pop
case they have been compromised, or have simply expired.
802 ba538816 Iustin Pop
803 ba538816 Iustin Pop
A new disk option for instance creation has been added that allows one
804 ba538816 Iustin Pop
to "adopt" currently existing logical volumes, with data
805 ba538816 Iustin Pop
preservation. This should allow easier migration to Ganeti from
806 ba538816 Iustin Pop
unmanaged (or managed via other software) instances.
807 ba538816 Iustin Pop
808 ba538816 Iustin Pop
Another disk improvement is the possibility to convert between redundant
809 ba538816 Iustin Pop
(DRBD) and plain (LVM) disk configuration for an instance. This should
810 ba538816 Iustin Pop
allow better scalability (starting with one node and growing the
811 ba538816 Iustin Pop
cluster, or shrinking a two-node cluster to one node).
812 ba538816 Iustin Pop
813 ba538816 Iustin Pop
A new feature that could help with automated node failovers has been
814 ba538816 Iustin Pop
implemented: if a node sees itself as offline (by querying the master
815 ba538816 Iustin Pop
candidates), it will try to shutdown (hard) all instances and any active
816 ba538816 Iustin Pop
DRBD devices. This reduces the risk of duplicate instances if an
817 ba538816 Iustin Pop
external script automatically failovers the instances on such nodes. To
818 ba538816 Iustin Pop
enable this, the cluster parameter ``maintain_node_health`` should be
819 ba538816 Iustin Pop
enabled; in the future this option (per the name) will enable other
820 ba538816 Iustin Pop
automatic maintenance features.
821 ba538816 Iustin Pop
822 ba538816 Iustin Pop
Instance export/import now will reuse the original instance
823 ba538816 Iustin Pop
specifications for all parameters; that means exporting an instance,
824 ba538816 Iustin Pop
deleting it and the importing it back should give an almost identical
825 ba538816 Iustin Pop
instance. Note that the default import behaviour has changed from
826 ba538816 Iustin Pop
before, where it created only one NIC; now it recreates the original
827 ba538816 Iustin Pop
number of NICs.
828 ba538816 Iustin Pop
829 ba538816 Iustin Pop
Cluster verify has added a few new checks: SSL certificates validity,
830 ba538816 Iustin Pop
/etc/hosts consistency across the cluster, etc.
831 ba538816 Iustin Pop
832 ba538816 Iustin Pop
Other changes
833 ba538816 Iustin Pop
~~~~~~~~~~~~~
834 ba538816 Iustin Pop
835 ba538816 Iustin Pop
As usual, many internal changes were done, documentation fixes,
836 ba538816 Iustin Pop
etc. Among others:
837 ba538816 Iustin Pop
838 ba538816 Iustin Pop
- Fixed cluster initialization with disabled cluster storage (regression
839 ba538816 Iustin Pop
  introduced in 2.1.1)
840 ba538816 Iustin Pop
- File-based storage supports growing the disks
841 ba538816 Iustin Pop
- Fixed behaviour of node role changes
842 ba538816 Iustin Pop
- Fixed cluster verify for some corner cases, plus a general rewrite of
843 ba538816 Iustin Pop
  cluster verify to allow future extension with more checks
844 ba538816 Iustin Pop
- Fixed log spamming by watcher and node daemon (regression introduced
845 ba538816 Iustin Pop
  in 2.1.1)
846 ba538816 Iustin Pop
- Fixed possible validation issues when changing the list of enabled
847 ba538816 Iustin Pop
  hypervisors
848 ba538816 Iustin Pop
- Fixed cleanup of /etc/hosts during node removal
849 ba538816 Iustin Pop
- Fixed RAPI response for invalid methods
850 ba538816 Iustin Pop
- Fixed bug with hashed passwords in ``ganeti-rapi`` daemon
851 ba538816 Iustin Pop
- Multiple small improvements to the KVM hypervisor (VNC usage, booting
852 ba538816 Iustin Pop
  from ide disks, etc.)
853 ba538816 Iustin Pop
- Allow OS changes without re-installation (to record a changed OS
854 ba538816 Iustin Pop
  outside of Ganeti, or to allow OS renames)
855 ba538816 Iustin Pop
- Allow instance creation without OS installation (useful for example if
856 ba538816 Iustin Pop
  the OS will be installed manually, or restored from a backup not in
857 ba538816 Iustin Pop
  Ganeti format)
858 ba538816 Iustin Pop
- Implemented option to make cluster ``copyfile`` use the replication
859 ba538816 Iustin Pop
  network
860 ba538816 Iustin Pop
- Added list of enabled hypervisors to ssconf (possibly useful for
861 ba538816 Iustin Pop
  external scripts)
862 ba538816 Iustin Pop
- Added a new tool (``tools/cfgupgrade12``) that allows upgrading from
863 ba538816 Iustin Pop
  1.2 clusters
864 ba538816 Iustin Pop
- A partial form of node re-IP is possible via node readd, which now
865 ba538816 Iustin Pop
  allows changed node primary IP
866 ba538816 Iustin Pop
- Command line utilities now show an informational message if the job is
867 ba538816 Iustin Pop
  waiting for a lock
868 ba538816 Iustin Pop
- The logs of the master daemon now show the PID/UID/GID of the
869 ba538816 Iustin Pop
  connected client
870 ba538816 Iustin Pop
871 ba538816 Iustin Pop
872 c655522d Iustin Pop
Version 2.1.1
873 c655522d Iustin Pop
-------------
874 c655522d Iustin Pop
875 bdc93557 Iustin Pop
*(Released Fri, 12 Mar 2010)*
876 bdc93557 Iustin Pop
877 c655522d Iustin Pop
During the 2.1.0 long release candidate cycle, a lot of improvements and
878 c655522d Iustin Pop
changes have accumulated with were released later as 2.1.1.
879 c655522d Iustin Pop
880 c655522d Iustin Pop
Major changes
881 c655522d Iustin Pop
~~~~~~~~~~~~~
882 c655522d Iustin Pop
883 c655522d Iustin Pop
The node evacuate command (``gnt-node evacuate``) was significantly
884 c655522d Iustin Pop
rewritten, and as such the IAllocator protocol was changed - a new
885 c655522d Iustin Pop
request type has been added. This unfortunate change during a stable
886 c655522d Iustin Pop
series is designed to improve performance of node evacuations; on
887 c655522d Iustin Pop
clusters with more than about five nodes and which are well-balanced,
888 c655522d Iustin Pop
evacuation should proceed in parallel for all instances of the node
889 c655522d Iustin Pop
being evacuated. As such, any existing IAllocator scripts need to be
890 c655522d Iustin Pop
updated, otherwise the above command will fail due to the unknown
891 c655522d Iustin Pop
request. The provided "dumb" allocator has not been updated; but the
892 c655522d Iustin Pop
ganeti-htools package supports the new protocol since version 0.2.4.
893 c655522d Iustin Pop
894 c655522d Iustin Pop
Another important change is increased validation of node and instance
895 c655522d Iustin Pop
names. This might create problems in special cases, if invalid host
896 c655522d Iustin Pop
names are being used.
897 c655522d Iustin Pop
898 c655522d Iustin Pop
Also, a new layer of hypervisor parameters has been added, that sits at
899 c655522d Iustin Pop
OS level between the cluster defaults and the instance ones. This allows
900 c655522d Iustin Pop
customisation of virtualization parameters depending on the installed
901 c655522d Iustin Pop
OS. For example instances with OS 'X' may have a different KVM kernel
902 c655522d Iustin Pop
(or any other parameter) than the cluster defaults. This is intended to
903 c655522d Iustin Pop
help managing a multiple OSes on the same cluster, without manual
904 c655522d Iustin Pop
modification of each instance's parameters.
905 c655522d Iustin Pop
906 c655522d Iustin Pop
A tool for merging clusters, ``cluster-merge``, has been added in the
907 c655522d Iustin Pop
tools sub-directory.
908 c655522d Iustin Pop
909 c655522d Iustin Pop
Bug fixes
910 c655522d Iustin Pop
~~~~~~~~~
911 c655522d Iustin Pop
912 c655522d Iustin Pop
- Improved the int/float conversions that should make the code more
913 c655522d Iustin Pop
  robust in face of errors from the node daemons
914 c655522d Iustin Pop
- Fixed the remove node code in case of internal configuration errors
915 c655522d Iustin Pop
- Fixed the node daemon behaviour in face of inconsistent queue
916 c655522d Iustin Pop
  directory (e.g. read-only file-system where we can't open the files
917 c655522d Iustin Pop
  read-write, etc.)
918 c655522d Iustin Pop
- Fixed the behaviour of gnt-node modify for master candidate demotion;
919 df3df936 Michael Hanselmann
  now it either aborts cleanly or, if given the new "auto_promote"
920 c655522d Iustin Pop
  parameter, will automatically promote other nodes as needed
921 c655522d Iustin Pop
- Fixed compatibility with (unreleased yet) Python 2.6.5 that would
922 c655522d Iustin Pop
  completely prevent Ganeti from working
923 c655522d Iustin Pop
- Fixed bug for instance export when not all disks were successfully
924 c655522d Iustin Pop
  exported
925 c655522d Iustin Pop
- Fixed behaviour of node add when the new node is slow in starting up
926 c655522d Iustin Pop
  the node daemon
927 c655522d Iustin Pop
- Fixed handling of signals in the LUXI client, which should improve
928 c655522d Iustin Pop
  behaviour of command-line scripts
929 c655522d Iustin Pop
- Added checks for invalid node/instance names in the configuration (now
930 c655522d Iustin Pop
  flagged during cluster verify)
931 c655522d Iustin Pop
- Fixed watcher behaviour for disk activation errors
932 c655522d Iustin Pop
- Fixed two potentially endless loops in http library, which led to the
933 c655522d Iustin Pop
  RAPI daemon hanging and consuming 100% CPU in some cases
934 c655522d Iustin Pop
- Fixed bug in RAPI daemon related to hashed passwords
935 c655522d Iustin Pop
- Fixed bug for unintended qemu-level bridging of multi-NIC KVM
936 c655522d Iustin Pop
  instances
937 c655522d Iustin Pop
- Enhanced compatibility with non-Debian OSes, but not using absolute
938 c655522d Iustin Pop
  path in some commands and allowing customisation of the ssh
939 c655522d Iustin Pop
  configuration directory
940 c655522d Iustin Pop
- Fixed possible future issue with new Python versions by abiding to the
941 c655522d Iustin Pop
  proper use of ``__slots__`` attribute on classes
942 c655522d Iustin Pop
- Added checks that should prevent directory traversal attacks
943 c655522d Iustin Pop
- Many documentation fixes based on feedback from users
944 c655522d Iustin Pop
945 c655522d Iustin Pop
New features
946 c655522d Iustin Pop
~~~~~~~~~~~~
947 c655522d Iustin Pop
948 df3df936 Michael Hanselmann
- Added an "early_release" more for instance replace disks and node
949 c655522d Iustin Pop
  evacuate, where we release locks earlier and thus allow higher
950 c655522d Iustin Pop
  parallelism within the cluster
951 c655522d Iustin Pop
- Added watcher hooks, intended to allow the watcher to restart other
952 c655522d Iustin Pop
  daemons (e.g. from the ganeti-nbma project), but they can be used of
953 c655522d Iustin Pop
  course for any other purpose
954 c655522d Iustin Pop
- Added a compile-time disable for DRBD barriers, to increase
955 c655522d Iustin Pop
  performance if the administrator trusts the power supply or the
956 c655522d Iustin Pop
  storage system to not lose writes
957 c655522d Iustin Pop
- Added the option of using syslog for logging instead of, or in
958 c655522d Iustin Pop
  addition to, Ganeti's own log files
959 c655522d Iustin Pop
- Removed boot restriction for paravirtual NICs for KVM, recent versions
960 c655522d Iustin Pop
  can indeed boot from a paravirtual NIC
961 c655522d Iustin Pop
- Added a generic debug level for many operations; while this is not
962 c655522d Iustin Pop
  used widely yet, it allows one to pass the debug value all the way to
963 c655522d Iustin Pop
  the OS scripts
964 c655522d Iustin Pop
- Enhanced the hooks environment for instance moves (failovers,
965 c655522d Iustin Pop
  migrations) where the primary/secondary nodes changed during the
966 c655522d Iustin Pop
  operation, by adding {NEW,OLD}_{PRIMARY,SECONDARY} vars
967 c655522d Iustin Pop
- Enhanced data validations for many user-supplied values; one important
968 c655522d Iustin Pop
  item is the restrictions imposed on instance and node names, which
969 c655522d Iustin Pop
  might reject some (invalid) host names
970 c655522d Iustin Pop
- Add a configure-time option to disable file-based storage, if it's not
971 c655522d Iustin Pop
  needed; this allows greater security separation between the master
972 c655522d Iustin Pop
  node and the other nodes from the point of view of the inter-node RPC
973 c655522d Iustin Pop
  protocol
974 c655522d Iustin Pop
- Added user notification in interactive tools if job is waiting in the
975 c655522d Iustin Pop
  job queue or trying to acquire locks
976 c655522d Iustin Pop
- Added log messages when a job is waiting for locks
977 c655522d Iustin Pop
- Added filtering by node tags in instance operations which admit
978 c655522d Iustin Pop
  multiple instances (start, stop, reboot, reinstall)
979 c655522d Iustin Pop
- Added a new tool for cluster mergers, ``cluster-merge``
980 c655522d Iustin Pop
- Parameters from command line which are of the form ``a=b,c=d`` can now
981 c655522d Iustin Pop
  use backslash escapes to pass in values which contain commas,
982 c655522d Iustin Pop
  e.g. ``a=b\\c,d=e`` where the 'a' parameter would get the value
983 c655522d Iustin Pop
  ``b,c``
984 c655522d Iustin Pop
- For KVM, the instance name is the first parameter passed to KVM, so
985 c655522d Iustin Pop
  that it's more visible in the process list
986 c655522d Iustin Pop
987 c655522d Iustin Pop
988 920a91bf Michael Hanselmann
Version 2.1.0
989 920a91bf Michael Hanselmann
-------------
990 920a91bf Michael Hanselmann
991 bdc93557 Iustin Pop
*(Released Tue, 2 Mar 2010)*
992 bdc93557 Iustin Pop
993 920a91bf Michael Hanselmann
Ganeti 2.1 brings many improvements with it. Major changes:
994 920a91bf Michael Hanselmann
995 920a91bf Michael Hanselmann
- Added infrastructure to ease automated disk repairs
996 920a91bf Michael Hanselmann
- Added new daemon to export configuration data in a cheaper way than
997 920a91bf Michael Hanselmann
  using the remote API
998 920a91bf Michael Hanselmann
- Instance NICs can now be routed instead of being associated with a
999 920a91bf Michael Hanselmann
  networking bridge
1000 920a91bf Michael Hanselmann
- Improved job locking logic to reduce impact of jobs acquiring multiple
1001 920a91bf Michael Hanselmann
  locks waiting for other long-running jobs
1002 920a91bf Michael Hanselmann
1003 bfe61b0b Iustin Pop
In-depth implementation details can be found in the Ganeti 2.1 design
1004 920a91bf Michael Hanselmann
document.
1005 920a91bf Michael Hanselmann
1006 920a91bf Michael Hanselmann
Details
1007 920a91bf Michael Hanselmann
~~~~~~~
1008 920a91bf Michael Hanselmann
1009 920a91bf Michael Hanselmann
- Added chroot hypervisor
1010 920a91bf Michael Hanselmann
- Added more options to xen-hvm hypervisor (``kernel_path`` and
1011 920a91bf Michael Hanselmann
  ``device_model``)
1012 920a91bf Michael Hanselmann
- Added more options to xen-pvm hypervisor (``use_bootloader``,
1013 920a91bf Michael Hanselmann
  ``bootloader_path`` and ``bootloader_args``)
1014 bfe61b0b Iustin Pop
- Added the ``use_localtime`` option for the xen-hvm and kvm
1015 bfe61b0b Iustin Pop
  hypervisors, and the default value for this has changed to false (in
1016 bfe61b0b Iustin Pop
  2.0 xen-hvm always enabled it)
1017 920a91bf Michael Hanselmann
- Added luxi call to submit multiple jobs in one go
1018 bfe61b0b Iustin Pop
- Added cluster initialization option to not modify ``/etc/hosts``
1019 920a91bf Michael Hanselmann
  file on nodes
1020 920a91bf Michael Hanselmann
- Added network interface parameters
1021 920a91bf Michael Hanselmann
- Added dry run mode to some LUs
1022 920a91bf Michael Hanselmann
- Added RAPI resources:
1023 920a91bf Michael Hanselmann
1024 920a91bf Michael Hanselmann
  - ``/2/instances/[instance_name]/info``
1025 920a91bf Michael Hanselmann
  - ``/2/instances/[instance_name]/replace-disks``
1026 920a91bf Michael Hanselmann
  - ``/2/nodes/[node_name]/evacuate``
1027 920a91bf Michael Hanselmann
  - ``/2/nodes/[node_name]/migrate``
1028 920a91bf Michael Hanselmann
  - ``/2/nodes/[node_name]/role``
1029 920a91bf Michael Hanselmann
  - ``/2/nodes/[node_name]/storage``
1030 920a91bf Michael Hanselmann
  - ``/2/nodes/[node_name]/storage/modify``
1031 920a91bf Michael Hanselmann
  - ``/2/nodes/[node_name]/storage/repair``
1032 920a91bf Michael Hanselmann
1033 920a91bf Michael Hanselmann
- Added OpCodes to evacuate or migrate all instances on a node
1034 9b94905f Iustin Pop
- Added new command to list storage elements on nodes (``gnt-node
1035 9b94905f Iustin Pop
  list-storage``) and modify them (``gnt-node modify-storage``)
1036 920a91bf Michael Hanselmann
- Added new ssconf files with master candidate IP address
1037 920a91bf Michael Hanselmann
  (``ssconf_master_candidates_ips``), node primary IP address
1038 920a91bf Michael Hanselmann
  (``ssconf_node_primary_ips``) and node secondary IP address
1039 920a91bf Michael Hanselmann
  (``ssconf_node_secondary_ips``)
1040 920a91bf Michael Hanselmann
- Added ``ganeti-confd`` and a client library to query the Ganeti
1041 920a91bf Michael Hanselmann
  configuration via UDP
1042 920a91bf Michael Hanselmann
- Added ability to run hooks after cluster initialization and before
1043 920a91bf Michael Hanselmann
  cluster destruction
1044 920a91bf Michael Hanselmann
- Added automatic mode for disk replace (``gnt-instance replace-disks
1045 920a91bf Michael Hanselmann
  --auto``)
1046 cc291012 Iustin Pop
- Added ``gnt-instance recreate-disks`` to re-create (empty) disks
1047 cc291012 Iustin Pop
  after catastrophic data-loss
1048 9b94905f Iustin Pop
- Added ``gnt-node repair-storage`` command to repair damaged LVM volume
1049 920a91bf Michael Hanselmann
  groups
1050 920a91bf Michael Hanselmann
- Added ``gnt-instance move`` command to move instances
1051 920a91bf Michael Hanselmann
- Added ``gnt-cluster watcher`` command to control watcher
1052 920a91bf Michael Hanselmann
- Added ``gnt-node powercycle`` command to powercycle nodes
1053 920a91bf Michael Hanselmann
- Added new job status field ``lock_status``
1054 920a91bf Michael Hanselmann
- Added parseable error codes to cluster verification (``gnt-cluster
1055 920a91bf Michael Hanselmann
  verify --error-codes``) and made output less verbose (use
1056 920a91bf Michael Hanselmann
  ``--verbose`` to restore previous behaviour)
1057 cc291012 Iustin Pop
- Added UUIDs to the main config entities (cluster, nodes, instances)
1058 920a91bf Michael Hanselmann
- Added support for OS variants
1059 936f3c59 Michael Hanselmann
- Added support for hashed passwords in the Ganeti remote API users file
1060 936f3c59 Michael Hanselmann
  (``rapi_users``)
1061 936f3c59 Michael Hanselmann
- Added option to specify maximum timeout on instance shutdown
1062 936f3c59 Michael Hanselmann
- Added ``--no-ssh-init`` option to ``gnt-cluster init``
1063 f154a7a3 Michael Hanselmann
- Added new helper script to start and stop Ganeti daemons
1064 f154a7a3 Michael Hanselmann
  (``daemon-util``), with the intent to reduce the work necessary to
1065 f154a7a3 Michael Hanselmann
  adjust Ganeti for non-Debian distributions and to start/stop daemons
1066 f154a7a3 Michael Hanselmann
  from one place
1067 920a91bf Michael Hanselmann
- Added more unittests
1068 920a91bf Michael Hanselmann
- Fixed critical bug in ganeti-masterd startup
1069 bfe61b0b Iustin Pop
- Removed the configure-time ``kvm-migration-port`` parameter, this is
1070 bfe61b0b Iustin Pop
  now customisable at the cluster level for both the KVM and Xen
1071 bfe61b0b Iustin Pop
  hypervisors using the new ``migration_port`` parameter
1072 920a91bf Michael Hanselmann
- Pass ``INSTANCE_REINSTALL`` variable to OS installation script when
1073 920a91bf Michael Hanselmann
  reinstalling an instance
1074 3e5af833 Michael Hanselmann
- Allowed ``@`` in tag names
1075 936f3c59 Michael Hanselmann
- Migrated to Sphinx (http://sphinx.pocoo.org/) for documentation
1076 920a91bf Michael Hanselmann
- Many documentation updates
1077 920a91bf Michael Hanselmann
- Distribute hypervisor files on ``gnt-cluster redist-conf``
1078 920a91bf Michael Hanselmann
- ``gnt-instance reinstall`` can now reinstall multiple instances
1079 920a91bf Michael Hanselmann
- Updated many command line parameters
1080 920a91bf Michael Hanselmann
- Introduced new OS API version 15
1081 920a91bf Michael Hanselmann
- No longer support a default hypervisor
1082 920a91bf Michael Hanselmann
- Treat virtual LVs as inexistent
1083 920a91bf Michael Hanselmann
- Improved job locking logic to reduce lock contention
1084 920a91bf Michael Hanselmann
- Match instance and node names case insensitively
1085 920a91bf Michael Hanselmann
- Reimplemented bash completion script to be more complete
1086 920a91bf Michael Hanselmann
- Improved burnin
1087 920a91bf Michael Hanselmann
1088 920a91bf Michael Hanselmann
1089 e8cd4796 Iustin Pop
Version 2.0.6
1090 7b8f3fcd Michael Hanselmann
-------------
1091 7b8f3fcd Michael Hanselmann
1092 bdc93557 Iustin Pop
*(Released Thu, 4 Feb 2010)*
1093 bdc93557 Iustin Pop
1094 7b8f3fcd Michael Hanselmann
- Fix cleaner behaviour on nodes not in a cluster (Debian bug 568105)
1095 7b8f3fcd Michael Hanselmann
- Fix a string formatting bug
1096 7b8f3fcd Michael Hanselmann
- Improve safety of the code in some error paths
1097 7b8f3fcd Michael Hanselmann
- Improve data validation in the master of values returned from nodes
1098 7b8f3fcd Michael Hanselmann
1099 e8cd4796 Iustin Pop
1100 e5823b7e Iustin Pop
Version 2.0.5
1101 5c0433d6 Iustin Pop
-------------
1102 5c0433d6 Iustin Pop
1103 bdc93557 Iustin Pop
*(Released Thu, 17 Dec 2009)*
1104 bdc93557 Iustin Pop
1105 5c0433d6 Iustin Pop
- Fix security issue due to missing validation of iallocator names; this
1106 5c0433d6 Iustin Pop
  allows local and remote execution of arbitrary executables
1107 5c0433d6 Iustin Pop
- Fix failure of gnt-node list during instance removal
1108 5c0433d6 Iustin Pop
- Ship the RAPI documentation in the archive
1109 5c0433d6 Iustin Pop
1110 e5823b7e Iustin Pop
1111 7579eb06 Iustin Pop
Version 2.0.4
1112 c8872a0b Iustin Pop
-------------
1113 c8872a0b Iustin Pop
1114 bdc93557 Iustin Pop
*(Released Wed, 30 Sep 2009)*
1115 bdc93557 Iustin Pop
1116 c8872a0b Iustin Pop
- Fixed many wrong messages
1117 c8872a0b Iustin Pop
- Fixed a few bugs related to the locking library
1118 c8872a0b Iustin Pop
- Fixed MAC checking at instance creation time
1119 c8872a0b Iustin Pop
- Fixed a DRBD parsing bug related to gaps in /proc/drbd
1120 c8872a0b Iustin Pop
- Fixed a few issues related to signal handling in both daemons and
1121 c8872a0b Iustin Pop
  scripts
1122 c8872a0b Iustin Pop
- Fixed the example startup script provided
1123 c8872a0b Iustin Pop
- Fixed insserv dependencies in the example startup script (patch from
1124 c8872a0b Iustin Pop
  Debian)
1125 c8872a0b Iustin Pop
- Fixed handling of drained nodes in the iallocator framework
1126 c8872a0b Iustin Pop
- Fixed handling of KERNEL_PATH parameter for xen-hvm (Debian bug
1127 c8872a0b Iustin Pop
  #528618)
1128 c8872a0b Iustin Pop
- Fixed error related to invalid job IDs in job polling
1129 c8872a0b Iustin Pop
- Fixed job/opcode persistence on unclean master shutdown
1130 c8872a0b Iustin Pop
- Fixed handling of partial job processing after unclean master
1131 c8872a0b Iustin Pop
  shutdown
1132 c8872a0b Iustin Pop
- Fixed error reporting from LUs, previously all errors were converted
1133 c8872a0b Iustin Pop
  into execution errors
1134 c8872a0b Iustin Pop
- Fixed error reporting from burnin
1135 c8872a0b Iustin Pop
- Decreased significantly the memory usage of the job queue
1136 c8872a0b Iustin Pop
- Optimised slightly multi-job submission
1137 c8872a0b Iustin Pop
- Optimised slightly opcode loading
1138 c8872a0b Iustin Pop
- Backported the multi-job submit framework from the development
1139 c8872a0b Iustin Pop
  branch; multi-instance start and stop should be faster
1140 c8872a0b Iustin Pop
- Added script to clean archived jobs after 21 days; this will reduce
1141 c8872a0b Iustin Pop
  the size of the queue directory
1142 c8872a0b Iustin Pop
- Added some extra checks in disk size tracking
1143 c8872a0b Iustin Pop
- Added an example ethers hook script
1144 c8872a0b Iustin Pop
- Added a cluster parameter that prevents Ganeti from modifying of
1145 c8872a0b Iustin Pop
  /etc/hosts
1146 c8872a0b Iustin Pop
- Added more node information to RAPI responses
1147 aa287e8c Michael Hanselmann
- Added a ``gnt-job watch`` command that allows following the ouput of a
1148 c8872a0b Iustin Pop
  job
1149 c8872a0b Iustin Pop
- Added a bind-address option to ganeti-rapi
1150 c8872a0b Iustin Pop
- Added more checks to the configuration verify
1151 c8872a0b Iustin Pop
- Enhanced the burnin script such that some operations can be retried
1152 c8872a0b Iustin Pop
  automatically
1153 c8872a0b Iustin Pop
- Converted instance reinstall to multi-instance model
1154 61b5e342 Michael Hanselmann
1155 aa287e8c Michael Hanselmann
1156 9d725d41 Iustin Pop
Version 2.0.3
1157 61b5e342 Michael Hanselmann
-------------
1158 61b5e342 Michael Hanselmann
1159 bdc93557 Iustin Pop
*(Released Fri, 7 Aug 2009)*
1160 bdc93557 Iustin Pop
1161 61b5e342 Michael Hanselmann
- Added ``--ignore-size`` to the ``gnt-instance activate-disks`` command
1162 61b5e342 Michael Hanselmann
  to allow using the pre-2.0.2 behaviour in activation, if any existing
1163 61b5e342 Michael Hanselmann
  instances have mismatched disk sizes in the configuration
1164 7faf5110 Michael Hanselmann
- Added ``gnt-cluster repair-disk-sizes`` command to check and update
1165 7faf5110 Michael Hanselmann
  any configuration mismatches for disk sizes
1166 61b5e342 Michael Hanselmann
- Added ``gnt-master cluste-failover --no-voting`` to allow master
1167 61b5e342 Michael Hanselmann
  failover to work on two-node clusters
1168 aa287e8c Michael Hanselmann
- Fixed the ``--net`` option of ``gnt-backup import``, which was
1169 aa287e8c Michael Hanselmann
  unusable
1170 61b5e342 Michael Hanselmann
- Fixed detection of OS script errors in ``gnt-backup export``
1171 61b5e342 Michael Hanselmann
- Fixed exit code of ``gnt-backup export``
1172 61b5e342 Michael Hanselmann
1173 9d725d41 Iustin Pop
1174 550a995a Iustin Pop
Version 2.0.2
1175 61b5e342 Michael Hanselmann
-------------
1176 61b5e342 Michael Hanselmann
1177 bdc93557 Iustin Pop
*(Released Fri, 17 Jul 2009)*
1178 bdc93557 Iustin Pop
1179 61b5e342 Michael Hanselmann
- Added experimental support for stripped logical volumes; this should
1180 61b5e342 Michael Hanselmann
  enhance performance but comes with a higher complexity in the block
1181 61b5e342 Michael Hanselmann
  device handling; stripping is only enabled when passing
1182 61b5e342 Michael Hanselmann
  ``--with-lvm-stripecount=N`` to ``configure``, but codepaths are
1183 61b5e342 Michael Hanselmann
  affected even in the non-stripped mode
1184 61b5e342 Michael Hanselmann
- Improved resiliency against transient failures at the end of DRBD
1185 61b5e342 Michael Hanselmann
  resyncs, and in general of DRBD resync checks
1186 61b5e342 Michael Hanselmann
- Fixed a couple of issues with exports and snapshot errors
1187 61b5e342 Michael Hanselmann
- Fixed a couple of issues in instance listing
1188 61b5e342 Michael Hanselmann
- Added display of the disk size in ``gnt-instance info``
1189 61b5e342 Michael Hanselmann
- Fixed checking for valid OSes in instance creation
1190 aa287e8c Michael Hanselmann
- Fixed handling of the "vcpus" parameter in instance listing and in
1191 61b5e342 Michael Hanselmann
  general of invalid parameters
1192 61b5e342 Michael Hanselmann
- Fixed http server library, and thus RAPI, to handle invalid
1193 61b5e342 Michael Hanselmann
  username/password combinations correctly; this means that now they
1194 61b5e342 Michael Hanselmann
  report unauthorized for queries too, not only for modifications,
1195 61b5e342 Michael Hanselmann
  allowing earlier detect of configuration problems
1196 aa287e8c Michael Hanselmann
- Added a new "role" node list field, equivalent to the master/master
1197 61b5e342 Michael Hanselmann
  candidate/drained/offline flags combinations
1198 61b5e342 Michael Hanselmann
- Fixed cluster modify and changes of candidate pool size
1199 61b5e342 Michael Hanselmann
- Fixed cluster verify error messages for wrong files on regular nodes
1200 61b5e342 Michael Hanselmann
- Fixed a couple of issues with node demotion from master candidate role
1201 61b5e342 Michael Hanselmann
- Fixed node readd issues
1202 61b5e342 Michael Hanselmann
- Added non-interactive mode for ``ganeti-masterd --no-voting`` startup
1203 aa287e8c Michael Hanselmann
- Added a new ``--no-voting`` option for masterfailover to fix failover
1204 aa287e8c Michael Hanselmann
  on two-nodes clusters when the former master node is unreachable
1205 61b5e342 Michael Hanselmann
- Added instance reinstall over RAPI
1206 61b5e342 Michael Hanselmann
1207 550a995a Iustin Pop
1208 0dea942c Iustin Pop
Version 2.0.1
1209 61b5e342 Michael Hanselmann
-------------
1210 61b5e342 Michael Hanselmann
1211 bdc93557 Iustin Pop
*(Released Tue, 16 Jun 2009)*
1212 bdc93557 Iustin Pop
1213 61b5e342 Michael Hanselmann
- added ``-H``/``-B`` startup parameters to ``gnt-instance``, which will
1214 61b5e342 Michael Hanselmann
  allow re-adding the start in single-user option (regression from 1.2)
1215 61b5e342 Michael Hanselmann
- the watcher writes the instance status to a file, to allow monitoring
1216 61b5e342 Michael Hanselmann
  to report the instance status (from the master) based on cached
1217 61b5e342 Michael Hanselmann
  results of the watcher's queries; while this can get stale if the
1218 61b5e342 Michael Hanselmann
  watcher is being locked due to other work on the cluster, this is
1219 61b5e342 Michael Hanselmann
  still an improvement
1220 61b5e342 Michael Hanselmann
- the watcher now also restarts the node daemon and the rapi daemon if
1221 61b5e342 Michael Hanselmann
  they died
1222 61b5e342 Michael Hanselmann
- fixed the watcher to handle full and drained queue cases
1223 7faf5110 Michael Hanselmann
- hooks export more instance data in the environment, which helps if
1224 7faf5110 Michael Hanselmann
  hook scripts need to take action based on the instance's properties
1225 7faf5110 Michael Hanselmann
  (no longer need to query back into ganeti)
1226 61b5e342 Michael Hanselmann
- instance failovers when the instance is stopped do not check for free
1227 61b5e342 Michael Hanselmann
  RAM, so that failing over a stopped instance is possible in low memory
1228 61b5e342 Michael Hanselmann
  situations
1229 61b5e342 Michael Hanselmann
- rapi uses queries for tags instead of jobs (for less job traffic), and
1230 61b5e342 Michael Hanselmann
  for cluster tags it won't talk to masterd at all but read them from
1231 61b5e342 Michael Hanselmann
  ssconf
1232 61b5e342 Michael Hanselmann
- a couple of error handling fixes in RAPI
1233 61b5e342 Michael Hanselmann
- drbd handling: improved the error handling of inconsistent disks after
1234 61b5e342 Michael Hanselmann
  resync to reduce the frequency of "there are some degraded disks for
1235 61b5e342 Michael Hanselmann
  this instance" messages
1236 61b5e342 Michael Hanselmann
- fixed a bug in live migration when DRBD doesn't want to reconnect (the
1237 61b5e342 Michael Hanselmann
  error handling path called a wrong function name)
1238 61b5e342 Michael Hanselmann
1239 0dea942c Iustin Pop
1240 7a8994d4 Iustin Pop
Version 2.0.0 final
1241 61b5e342 Michael Hanselmann
-------------------
1242 61b5e342 Michael Hanselmann
1243 bdc93557 Iustin Pop
*(Released Wed, 27 May 2009)*
1244 bdc93557 Iustin Pop
1245 61b5e342 Michael Hanselmann
- no changes from rc5
1246 61b5e342 Michael Hanselmann
1247 7a8994d4 Iustin Pop
1248 b926bd98 Iustin Pop
Version 2.0 release candidate 5
1249 61b5e342 Michael Hanselmann
-------------------------------
1250 61b5e342 Michael Hanselmann
1251 bdc93557 Iustin Pop
*(Released Wed, 20 May 2009)*
1252 bdc93557 Iustin Pop
1253 61b5e342 Michael Hanselmann
- fix a couple of bugs (validation, argument checks)
1254 61b5e342 Michael Hanselmann
- fix ``gnt-cluster getmaster`` on non-master nodes (regression)
1255 61b5e342 Michael Hanselmann
- some small improvements to RAPI and IAllocator
1256 61b5e342 Michael Hanselmann
- make watcher automatically start the master daemon if down
1257 61b5e342 Michael Hanselmann
1258 b926bd98 Iustin Pop
1259 d1908b41 Iustin Pop
Version 2.0 release candidate 4
1260 61b5e342 Michael Hanselmann
-------------------------------
1261 61b5e342 Michael Hanselmann
1262 bdc93557 Iustin Pop
*(Released Mon, 27 Apr 2009)*
1263 bdc93557 Iustin Pop
1264 61b5e342 Michael Hanselmann
- change the OS list to not require locks; this helps with big clusters
1265 61b5e342 Michael Hanselmann
- fix ``gnt-cluster verify`` and ``gnt-cluster verify-disks`` when the
1266 61b5e342 Michael Hanselmann
  volume group is broken
1267 61b5e342 Michael Hanselmann
- ``gnt-instance info``, without any arguments, doesn't run for all
1268 61b5e342 Michael Hanselmann
  instances anymore; either pass ``--all`` or pass the desired
1269 61b5e342 Michael Hanselmann
  instances; this helps against mistakes on big clusters where listing
1270 61b5e342 Michael Hanselmann
  the information for all instances takes a long time
1271 61b5e342 Michael Hanselmann
- miscellaneous doc and man pages fixes
1272 61b5e342 Michael Hanselmann
1273 d1908b41 Iustin Pop
1274 5bbefdec Iustin Pop
Version 2.0 release candidate 3
1275 61b5e342 Michael Hanselmann
-------------------------------
1276 61b5e342 Michael Hanselmann
1277 bdc93557 Iustin Pop
*(Released Wed, 8 Apr 2009)*
1278 bdc93557 Iustin Pop
1279 61b5e342 Michael Hanselmann
- Change the internal locking model of some ``gnt-node`` commands, in
1280 61b5e342 Michael Hanselmann
  order to reduce contention (and blocking of master daemon) when
1281 61b5e342 Michael Hanselmann
  batching many creation/reinstall jobs
1282 61b5e342 Michael Hanselmann
- Fixes to Xen soft reboot
1283 61b5e342 Michael Hanselmann
- No longer build documentation at build time, instead distribute it in
1284 61b5e342 Michael Hanselmann
  the archive, in order to reduce the need for the whole docbook/rst
1285 61b5e342 Michael Hanselmann
  toolchains
1286 61b5e342 Michael Hanselmann
1287 5bbefdec Iustin Pop
1288 f06d91f2 Iustin Pop
Version 2.0 release candidate 2
1289 61b5e342 Michael Hanselmann
-------------------------------
1290 61b5e342 Michael Hanselmann
1291 bdc93557 Iustin Pop
*(Released Fri, 27 Mar 2009)*
1292 bdc93557 Iustin Pop
1293 61b5e342 Michael Hanselmann
- Now the cfgupgrade scripts works and can upgrade 1.2.7 clusters to 2.0
1294 61b5e342 Michael Hanselmann
- Fix watcher startup sequence, improves the behaviour of busy clusters
1295 61b5e342 Michael Hanselmann
- Some other fixes in ``gnt-cluster verify``, ``gnt-instance
1296 61b5e342 Michael Hanselmann
  replace-disks``, ``gnt-instance add``, ``gnt-cluster queue``, KVM VNC
1297 61b5e342 Michael Hanselmann
  bind address and other places
1298 61b5e342 Michael Hanselmann
- Some documentation fixes and updates
1299 61b5e342 Michael Hanselmann
1300 f06d91f2 Iustin Pop
1301 a2370b24 Iustin Pop
Version 2.0 release candidate 1
1302 61b5e342 Michael Hanselmann
-------------------------------
1303 61b5e342 Michael Hanselmann
1304 bdc93557 Iustin Pop
*(Released Mon, 2 Mar 2009)*
1305 bdc93557 Iustin Pop
1306 61b5e342 Michael Hanselmann
- More documentation updates, now all docs should be more-or-less
1307 61b5e342 Michael Hanselmann
  up-to-date
1308 61b5e342 Michael Hanselmann
- A couple of small fixes (mixed hypervisor clusters, offline nodes,
1309 61b5e342 Michael Hanselmann
  etc.)
1310 61b5e342 Michael Hanselmann
- Added a customizable HV_KERNEL_ARGS hypervisor parameter (for Xen PVM
1311 61b5e342 Michael Hanselmann
  and KVM)
1312 61b5e342 Michael Hanselmann
- Fix an issue related to $libdir/run/ganeti and cluster creation
1313 61b5e342 Michael Hanselmann
1314 a2370b24 Iustin Pop
1315 2fb85b64 Iustin Pop
Version 2.0 beta 2
1316 61b5e342 Michael Hanselmann
------------------
1317 61b5e342 Michael Hanselmann
1318 bdc93557 Iustin Pop
*(Released Thu, 19 Feb 2009)*
1319 bdc93557 Iustin Pop
1320 61b5e342 Michael Hanselmann
- Xen PVM and KVM have switched the default value for the instance root
1321 61b5e342 Michael Hanselmann
  disk to the first partition on the first drive, instead of the whole
1322 61b5e342 Michael Hanselmann
  drive; this means that the OS installation scripts must be changed
1323 61b5e342 Michael Hanselmann
  accordingly
1324 61b5e342 Michael Hanselmann
- Man pages have been updated
1325 61b5e342 Michael Hanselmann
- RAPI has been switched by default to HTTPS, and the exported functions
1326 61b5e342 Michael Hanselmann
  should all work correctly
1327 61b5e342 Michael Hanselmann
- RAPI v1 has been removed
1328 61b5e342 Michael Hanselmann
- Many improvements to the KVM hypervisor
1329 61b5e342 Michael Hanselmann
- Block device errors are now better reported
1330 61b5e342 Michael Hanselmann
- Many other bugfixes and small improvements
1331 61b5e342 Michael Hanselmann
1332 2fb85b64 Iustin Pop
1333 10f31783 Iustin Pop
Version 2.0 beta 1
1334 61b5e342 Michael Hanselmann
------------------
1335 61b5e342 Michael Hanselmann
1336 bdc93557 Iustin Pop
*(Released Mon, 26 Jan 2009)*
1337 bdc93557 Iustin Pop
1338 61b5e342 Michael Hanselmann
- Version 2 is a general rewrite of the code and therefore the
1339 61b5e342 Michael Hanselmann
  differences are too many to list, see the design document for 2.0 in
1340 61b5e342 Michael Hanselmann
  the ``doc/`` subdirectory for more details
1341 61b5e342 Michael Hanselmann
- In this beta version there is not yet a migration path from 1.2 (there
1342 61b5e342 Michael Hanselmann
  will be one in the final 2.0 release)
1343 61b5e342 Michael Hanselmann
- A few significant changes are:
1344 61b5e342 Michael Hanselmann
1345 61b5e342 Michael Hanselmann
  - all commands are executed by a daemon (``ganeti-masterd``) and the
1346 61b5e342 Michael Hanselmann
    various ``gnt-*`` commands are just front-ends to it
1347 7faf5110 Michael Hanselmann
  - all the commands are entered into, and executed from a job queue,
1348 7faf5110 Michael Hanselmann
    see the ``gnt-job(8)`` manpage
1349 7faf5110 Michael Hanselmann
  - the RAPI daemon supports read-write operations, secured by basic
1350 7faf5110 Michael Hanselmann
    HTTP authentication on top of HTTPS
1351 61b5e342 Michael Hanselmann
  - DRBD version 0.7 support has been removed, DRBD 8 is the only
1352 61b5e342 Michael Hanselmann
    supported version (when migrating from Ganeti 1.2 to 2.0, you need
1353 61b5e342 Michael Hanselmann
    to migrate to DRBD 8 first while still running Ganeti 1.2)
1354 61b5e342 Michael Hanselmann
  - DRBD devices are using statically allocated minor numbers, which
1355 61b5e342 Michael Hanselmann
    will be assigned to existing instances during the migration process
1356 61b5e342 Michael Hanselmann
  - there is support for both Xen PVM and Xen HVM instances running on
1357 61b5e342 Michael Hanselmann
    the same cluster
1358 61b5e342 Michael Hanselmann
  - KVM virtualization is supported too
1359 61b5e342 Michael Hanselmann
  - file-based storage has been implemented, which means that it is
1360 61b5e342 Michael Hanselmann
    possible to run the cluster without LVM and DRBD storage, for
1361 61b5e342 Michael Hanselmann
    example using a shared filesystem exported from shared storage (and
1362 61b5e342 Michael Hanselmann
    still have live migration)
1363 61b5e342 Michael Hanselmann
1364 10f31783 Iustin Pop
1365 10f31783 Iustin Pop
Version 1.2.7
1366 61b5e342 Michael Hanselmann
-------------
1367 61b5e342 Michael Hanselmann
1368 bdc93557 Iustin Pop
*(Released Tue, 13 Jan 2009)*
1369 bdc93557 Iustin Pop
1370 61b5e342 Michael Hanselmann
- Change the default reboot type in ``gnt-instance reboot`` to "hard"
1371 61b5e342 Michael Hanselmann
- Reuse the old instance mac address by default on instance import, if
1372 61b5e342 Michael Hanselmann
  the instance name is the same.
1373 7faf5110 Michael Hanselmann
- Handle situations in which the node info rpc returns incomplete
1374 7faf5110 Michael Hanselmann
  results (issue 46)
1375 61b5e342 Michael Hanselmann
- Add checks for tcp/udp ports collisions in ``gnt-cluster verify``
1376 61b5e342 Michael Hanselmann
- Improved version of batcher:
1377 61b5e342 Michael Hanselmann
1378 61b5e342 Michael Hanselmann
  - state file support
1379 61b5e342 Michael Hanselmann
  - instance mac address support
1380 61b5e342 Michael Hanselmann
  - support for HVM clusters/instances
1381 61b5e342 Michael Hanselmann
1382 61b5e342 Michael Hanselmann
- Add an option to show the number of cpu sockets and nodes in
1383 61b5e342 Michael Hanselmann
  ``gnt-node list``
1384 61b5e342 Michael Hanselmann
- Support OSes that handle more than one version of the OS api (but do
1385 61b5e342 Michael Hanselmann
  not change the current API in any other way)
1386 61b5e342 Michael Hanselmann
- Fix ``gnt-node migrate``
1387 61b5e342 Michael Hanselmann
- ``gnt-debug`` man page
1388 61b5e342 Michael Hanselmann
- Fixes various more typos and small issues
1389 61b5e342 Michael Hanselmann
- Increase disk resync maximum speed to 60MB/s (from 30MB/s)
1390 61b5e342 Michael Hanselmann
1391 10f31783 Iustin Pop
1392 10f31783 Iustin Pop
Version 1.2.6
1393 61b5e342 Michael Hanselmann
-------------
1394 61b5e342 Michael Hanselmann
1395 bdc93557 Iustin Pop
*(Released Wed, 24 Sep 2008)*
1396 bdc93557 Iustin Pop
1397 61b5e342 Michael Hanselmann
- new ``--hvm-nic-type`` and ``--hvm-disk-type`` flags to control the
1398 61b5e342 Michael Hanselmann
  type of disk exported to fully virtualized instances.
1399 61b5e342 Michael Hanselmann
- provide access to the serial console of HVM instances
1400 7faf5110 Michael Hanselmann
- instance auto_balance flag, set by default. If turned off it will
1401 7faf5110 Michael Hanselmann
  avoid warnings on cluster verify if there is not enough memory to fail
1402 7faf5110 Michael Hanselmann
  over an instance. in the future it will prevent automatically failing
1403 7faf5110 Michael Hanselmann
  it over when we will support that.
1404 61b5e342 Michael Hanselmann
- batcher tool for instance creation, see ``tools/README.batcher``
1405 61b5e342 Michael Hanselmann
- ``gnt-instance reinstall --select-os`` to interactively select a new
1406 61b5e342 Michael Hanselmann
  operating system when reinstalling an instance.
1407 61b5e342 Michael Hanselmann
- when changing the memory amount on instance modify a check has been
1408 61b5e342 Michael Hanselmann
  added that the instance will be able to start. also warnings are
1409 61b5e342 Michael Hanselmann
  emitted if the instance will not be able to fail over, if auto_balance
1410 61b5e342 Michael Hanselmann
  is true.
1411 61b5e342 Michael Hanselmann
- documentation fixes
1412 61b5e342 Michael Hanselmann
- sync fields between ``gnt-instance list/modify/add/import``
1413 61b5e342 Michael Hanselmann
- fix a race condition in drbd when the sync speed was set after giving
1414 61b5e342 Michael Hanselmann
  the device a remote peer.
1415 61b5e342 Michael Hanselmann
1416 10f31783 Iustin Pop
1417 10f31783 Iustin Pop
Version 1.2.5
1418 61b5e342 Michael Hanselmann
-------------
1419 61b5e342 Michael Hanselmann
1420 bdc93557 Iustin Pop
*(Released Tue, 22 Jul 2008)*
1421 bdc93557 Iustin Pop
1422 61b5e342 Michael Hanselmann
- note: the allowed size and number of tags per object were reduced
1423 61b5e342 Michael Hanselmann
- fix a bug in ``gnt-cluster verify`` with inconsistent volume groups
1424 61b5e342 Michael Hanselmann
- fixed twisted 8.x compatibility
1425 61b5e342 Michael Hanselmann
- fixed ``gnt-instance replace-disks`` with iallocator
1426 61b5e342 Michael Hanselmann
- add TCP keepalives on twisted connections to detect restarted nodes
1427 61b5e342 Michael Hanselmann
- disk increase support, see ``gnt-instance grow-disk``
1428 61b5e342 Michael Hanselmann
- implement bulk node/instance query for RAPI
1429 61b5e342 Michael Hanselmann
- add tags in node/instance listing (optional)
1430 61b5e342 Michael Hanselmann
- experimental migration (and live migration) support, read the man page
1431 61b5e342 Michael Hanselmann
  for ``gnt-instance migrate``
1432 61b5e342 Michael Hanselmann
- the ``ganeti-watcher`` logs are now timestamped, and the watcher also
1433 61b5e342 Michael Hanselmann
  has some small improvements in handling its state file
1434 61b5e342 Michael Hanselmann
1435 10f31783 Iustin Pop
1436 10f31783 Iustin Pop
Version 1.2.4
1437 61b5e342 Michael Hanselmann
-------------
1438 61b5e342 Michael Hanselmann
1439 bdc93557 Iustin Pop
*(Released Fri, 13 Jun 2008)*
1440 bdc93557 Iustin Pop
1441 61b5e342 Michael Hanselmann
- Experimental readonly, REST-based remote API implementation;
1442 61b5e342 Michael Hanselmann
  automatically started on master node, TCP port 5080, if enabled by
1443 61b5e342 Michael Hanselmann
  ``--enable-rapi`` parameter to configure script.
1444 61b5e342 Michael Hanselmann
- Instance allocator support. Add and import instance accept a
1445 61b5e342 Michael Hanselmann
  ``--iallocator`` parameter, and call that instance allocator to decide
1446 61b5e342 Michael Hanselmann
  which node to use for the instance. The iallocator document describes
1447 61b5e342 Michael Hanselmann
  what's expected from an allocator script.
1448 61b5e342 Michael Hanselmann
- ``gnt-cluster verify`` N+1 memory redundancy checks: Unless passed the
1449 61b5e342 Michael Hanselmann
  ``--no-nplus1-mem`` option ``gnt-cluster verify`` now checks that if a
1450 61b5e342 Michael Hanselmann
  node is lost there is still enough memory to fail over the instances
1451 61b5e342 Michael Hanselmann
  that reside on it.
1452 61b5e342 Michael Hanselmann
- ``gnt-cluster verify`` hooks: it is now possible to add post-hooks to
1453 61b5e342 Michael Hanselmann
  ``gnt-cluster verify``, to check for site-specific compliance. All the
1454 61b5e342 Michael Hanselmann
  hooks will run, and their output, if any, will be displayed. Any
1455 61b5e342 Michael Hanselmann
  failing hook will make the verification return an error value.
1456 61b5e342 Michael Hanselmann
- ``gnt-cluster verify`` now checks that its peers are reachable on the
1457 61b5e342 Michael Hanselmann
  primary and secondary interfaces
1458 61b5e342 Michael Hanselmann
- ``gnt-node add`` now supports the ``--readd`` option, to readd a node
1459 61b5e342 Michael Hanselmann
  that is still declared as part of the cluster and has failed.
1460 61b5e342 Michael Hanselmann
- ``gnt-* list`` commands now accept a new ``-o +field`` way of
1461 61b5e342 Michael Hanselmann
  specifying output fields, that just adds the chosen fields to the
1462 61b5e342 Michael Hanselmann
  default ones.
1463 61b5e342 Michael Hanselmann
- ``gnt-backup`` now has a new ``remove`` command to delete an existing
1464 61b5e342 Michael Hanselmann
  export from the filesystem.
1465 61b5e342 Michael Hanselmann
- New per-instance parameters hvm_acpi, hvm_pae and hvm_cdrom_image_path
1466 61b5e342 Michael Hanselmann
  have been added. Using them you can enable/disable acpi and pae
1467 61b5e342 Michael Hanselmann
  support, and specify a path for a cd image to be exported to the
1468 61b5e342 Michael Hanselmann
  instance. These parameters as the name suggest only work on HVM
1469 61b5e342 Michael Hanselmann
  clusters.
1470 61b5e342 Michael Hanselmann
- When upgrading an HVM cluster to Ganeti 1.2.4, the values for ACPI and
1471 61b5e342 Michael Hanselmann
  PAE support will be set to the previously hardcoded values, but the
1472 61b5e342 Michael Hanselmann
  (previously hardcoded) path to the CDROM ISO image will be unset and
1473 61b5e342 Michael Hanselmann
  if required, needs to be set manually with ``gnt-instance modify``
1474 61b5e342 Michael Hanselmann
  after the upgrade.
1475 61b5e342 Michael Hanselmann
- The address to which an instance's VNC console is bound is now
1476 61b5e342 Michael Hanselmann
  selectable per-instance, rather than being cluster wide. Of course
1477 61b5e342 Michael Hanselmann
  this only applies to instances controlled via VNC, so currently just
1478 61b5e342 Michael Hanselmann
  applies to HVM clusters.
1479 61b5e342 Michael Hanselmann
1480 10f31783 Iustin Pop
1481 bae27f68 Iustin Pop
Version 1.2.3
1482 61b5e342 Michael Hanselmann
-------------
1483 61b5e342 Michael Hanselmann
1484 bdc93557 Iustin Pop
*(Released Mon, 18 Feb 2008)*
1485 bdc93557 Iustin Pop
1486 61b5e342 Michael Hanselmann
- more tweaks to the disk activation code (especially helpful for DRBD)
1487 61b5e342 Michael Hanselmann
- change the default ``gnt-instance list`` output format, now there is
1488 61b5e342 Michael Hanselmann
  one combined status field (see the manpage for the exact values this
1489 61b5e342 Michael Hanselmann
  field will have)
1490 61b5e342 Michael Hanselmann
- some more fixes for the mac export to hooks change
1491 61b5e342 Michael Hanselmann
- make Ganeti not break with DRBD 8.2.x (which changed the version
1492 61b5e342 Michael Hanselmann
  format in ``/proc/drbd``) (issue 24)
1493 61b5e342 Michael Hanselmann
- add an upgrade tool from "remote_raid1" disk template to "drbd" disk
1494 61b5e342 Michael Hanselmann
  template, allowing migration from DRBD0.7+MD to DRBD8
1495 61b5e342 Michael Hanselmann
1496 bae27f68 Iustin Pop
1497 e709baee Iustin Pop
Version 1.2.2
1498 61b5e342 Michael Hanselmann
-------------
1499 61b5e342 Michael Hanselmann
1500 bdc93557 Iustin Pop
*(Released Wed, 30 Jan 2008)*
1501 bdc93557 Iustin Pop
1502 61b5e342 Michael Hanselmann
- fix ``gnt-instance modify`` breakage introduced in 1.2.1 with the HVM
1503 61b5e342 Michael Hanselmann
  support (issue 23)
1504 61b5e342 Michael Hanselmann
- add command aliases infrastructure and a few aliases
1505 61b5e342 Michael Hanselmann
- allow listing of VCPUs in the ``gnt-instance list`` and improve the
1506 61b5e342 Michael Hanselmann
  man pages and the ``--help`` option of ``gnt-node
1507 61b5e342 Michael Hanselmann
  list``/``gnt-instance list``
1508 61b5e342 Michael Hanselmann
- fix ``gnt-backup list`` with down nodes (issue 21)
1509 61b5e342 Michael Hanselmann
- change the tools location (move from $pkgdatadir to $pkglibdir/tools)
1510 61b5e342 Michael Hanselmann
- fix the dist archive and add a check for including svn/git files in
1511 61b5e342 Michael Hanselmann
  the future
1512 61b5e342 Michael Hanselmann
- some developer-related changes: improve the burnin and the QA suite,
1513 61b5e342 Michael Hanselmann
  add an upload script for testing during development
1514 61b5e342 Michael Hanselmann
1515 e709baee Iustin Pop
1516 31b9055c Iustin Pop
Version 1.2.1
1517 61b5e342 Michael Hanselmann
-------------
1518 61b5e342 Michael Hanselmann
1519 bdc93557 Iustin Pop
*(Released Wed, 16 Jan 2008)*
1520 bdc93557 Iustin Pop
1521 61b5e342 Michael Hanselmann
- experimental HVM support, read the install document, section
1522 61b5e342 Michael Hanselmann
  "Initializing the cluster"
1523 61b5e342 Michael Hanselmann
- allow for the PVM hypervisor per-instance kernel and initrd paths
1524 61b5e342 Michael Hanselmann
- add a new command ``gnt-cluster verify-disks`` which uses a new
1525 61b5e342 Michael Hanselmann
  algorithm to improve the reconnection of the DRBD pairs if the device
1526 61b5e342 Michael Hanselmann
  on the secondary node has gone away
1527 61b5e342 Michael Hanselmann
- make logical volume code auto-activate LVs at disk activation time
1528 61b5e342 Michael Hanselmann
- slightly improve the speed of activating disks
1529 61b5e342 Michael Hanselmann
- allow specification of the MAC address at instance creation time, and
1530 61b5e342 Michael Hanselmann
  changing it later via ``gnt-instance modify``
1531 61b5e342 Michael Hanselmann
- fix handling of external commands that generate lots of output on
1532 61b5e342 Michael Hanselmann
  stderr
1533 61b5e342 Michael Hanselmann
- update documentation with regard to minimum version of DRBD8 supported
1534 61b5e342 Michael Hanselmann
1535 31b9055c Iustin Pop
1536 ce628bb4 Iustin Pop
Version 1.2.0
1537 61b5e342 Michael Hanselmann
-------------
1538 61b5e342 Michael Hanselmann
1539 bdc93557 Iustin Pop
*(Released Tue, 4 Dec 2007)*
1540 bdc93557 Iustin Pop
1541 7faf5110 Michael Hanselmann
- Log the ``xm create`` output to the node daemon log on failure (to
1542 7faf5110 Michael Hanselmann
  help diagnosing the error)
1543 61b5e342 Michael Hanselmann
- In debug mode, log all external commands output if failed to the logs
1544 61b5e342 Michael Hanselmann
- Change parsing of lvm commands to ignore stderr
1545 61b5e342 Michael Hanselmann
1546 ce628bb4 Iustin Pop
1547 3d492b09 Iustin Pop
Version 1.2b3
1548 61b5e342 Michael Hanselmann
-------------
1549 61b5e342 Michael Hanselmann
1550 bdc93557 Iustin Pop
*(Released Wed, 28 Nov 2007)*
1551 bdc93557 Iustin Pop
1552 61b5e342 Michael Hanselmann
- Another round of updates to the DRBD 8 code to deal with more failures
1553 61b5e342 Michael Hanselmann
  in the replace secondary node operation
1554 61b5e342 Michael Hanselmann
- Some more logging of failures in disk operations (lvm, drbd)
1555 61b5e342 Michael Hanselmann
- A few documentation updates
1556 61b5e342 Michael Hanselmann
- QA updates
1557 61b5e342 Michael Hanselmann
1558 3d492b09 Iustin Pop
1559 6c4811dc Iustin Pop
Version 1.2b2
1560 61b5e342 Michael Hanselmann
-------------
1561 61b5e342 Michael Hanselmann
1562 bdc93557 Iustin Pop
*(Released Tue, 13 Nov 2007)*
1563 bdc93557 Iustin Pop
1564 61b5e342 Michael Hanselmann
- Change configuration file format from Python's Pickle to JSON.
1565 61b5e342 Michael Hanselmann
  Upgrading is possible using the cfgupgrade utility.
1566 61b5e342 Michael Hanselmann
- Add support for DRBD 8.0 (new disk template ``drbd``) which allows for
1567 61b5e342 Michael Hanselmann
  faster replace disks and is more stable (DRBD 8 has many improvements
1568 61b5e342 Michael Hanselmann
  compared to DRBD 0.7)
1569 61b5e342 Michael Hanselmann
- Added command line tags support (see man pages for ``gnt-instance``,
1570 61b5e342 Michael Hanselmann
  ``gnt-node``, ``gnt-cluster``)
1571 61b5e342 Michael Hanselmann
- Added instance rename support
1572 61b5e342 Michael Hanselmann
- Added multi-instance startup/shutdown
1573 61b5e342 Michael Hanselmann
- Added cluster rename support
1574 61b5e342 Michael Hanselmann
- Added ``gnt-node evacuate`` to simplify some node operations
1575 61b5e342 Michael Hanselmann
- Added instance reboot operation that can speedup reboot as compared to
1576 61b5e342 Michael Hanselmann
  stop and start
1577 61b5e342 Michael Hanselmann
- Soften the requirement that hostnames are in FQDN format
1578 61b5e342 Michael Hanselmann
- The ``ganeti-watcher`` now activates drbd pairs after secondary node
1579 61b5e342 Michael Hanselmann
  reboots
1580 61b5e342 Michael Hanselmann
- Removed dependency on debian's patched fping that uses the
1581 61b5e342 Michael Hanselmann
  non-standard ``-S`` option
1582 7faf5110 Michael Hanselmann
- Now the OS definitions are searched for in multiple, configurable
1583 7faf5110 Michael Hanselmann
  paths (easier for distros to package)
1584 61b5e342 Michael Hanselmann
- Some changes to the hooks infrastructure (especially the new
1585 61b5e342 Michael Hanselmann
  post-configuration update hook)
1586 61b5e342 Michael Hanselmann
- Other small bugfixes
1587 558fd122 Michael Hanselmann
1588 515d87eb Michael Hanselmann
.. vim: set textwidth=72 syntax=rst :
1589 9b94905f Iustin Pop
.. Local Variables:
1590 9b94905f Iustin Pop
.. mode: rst
1591 9b94905f Iustin Pop
.. fill-column: 72
1592 9b94905f Iustin Pop
.. End: