Statistics
| Branch: | Tag: | Revision:

root / NEWS @ ebe6cf38

History | View | Annotate | Download (67.5 kB)

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