Statistics
| Branch: | Tag: | Revision:

root / NEWS @ 51ef5fe0

History | View | Annotate | Download (69.1 kB)

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