News
====
-Version 2.3 rc0
----------------
+Version 2.4.0 rc1
+-----------------
+
+*(Released Fri, 4 Feb 2011)*
+
+Many changes and fixes since the beta1 release. While there were some
+internal changes, the code has been mostly stabilised for the RC
+release.
+
+Note: the dumb allocator was removed in this release, as it was not kept
+up-to-date with the IAllocator protocol changes. It is recommended to
+use the ``hail`` command from the ganeti-htools package.
+
+Note: the 2.4 and up versions of Ganeti are not compatible with the
+0.2.x branch of ganeti-htools. You need to upgrade to
+ganeti-htools-0.3.0 (or later).
+
+Regressions fixed from 2.3
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+- Fixed the ``gnt-cluster verify-disks`` command
+- Made ``gnt-cluster verify-disks`` work in parallel (as opposed to
+ serially on nodes)
+- Fixed disk adoption breakage
+- Fixed wrong headers in instance listing for field aliases
+
+Other bugs fixed
+~~~~~~~~~~~~~~~~
+
+- Fixed corner case in KVM handling of NICs
+- Fixed many cases of wrong handling of non-vm_capable nodes
+- Fixed a bug where a missing instance symlink was not possible to
+ recreate with any ``gnt-*`` command (now ``gnt-instance
+ activate-disks`` does it)
+- Fixed the volume group name as reported by ``gnt-cluster
+ verify-disks``
+- Increased timeouts for the import-export code, hopefully leading to
+ fewer aborts due network or instance timeouts
+- Fixed bug in ``gnt-node list-storage``
+- Fixed bug where not all daemons were started on cluster
+ initialisation, but only at the first watcher run
+- Fixed many bugs in the OOB implementation
+- Fixed watcher behaviour in presence of instances with offline
+ secondaries
+- Fixed instance list output for instances running on the wrong node
+- a few fixes to the cluster-merge tool, but it still cannot merge
+ multi-node groups (currently it is not recommended to use this tool)
+
+
+Improvements
+~~~~~~~~~~~~
+
+- Improved network configuration for the KVM hypervisor
+- Added e1000 as a supported NIC for Xen-HVM
+- Improved the lvmstrap tool to also be able to use partitions, as
+ opposed to full disks
+- Improved speed of disk wiping (the cluster parameter
+ ``prealloc_wipe_disks``, so that it has a low impact on the total time
+ of instance creations
+- Added documentation for the OS parameters
+- Changed ``gnt-instance deactivate-disks`` so that it can work if the
+ hypervisor is not responding
+- Added display of blacklisted and hidden OS information in
+ ``gnt-cluster info``
+- Extended ``gnt-cluster verify`` to also validate hypervisor, backend,
+ NIC and node parameters, which might create problems with currently
+ invalid (but undetected) configuration files, but prevents validation
+ failures when unrelated parameters are modified
+- Changed cluster initialisation to wait for the master daemon to become
+ available
+- Expanded the RAPI interface:
+
+ - Added config redistribution resource
+ - Added activation/deactivation of instance disks
+ - Added export of console information
+
+- Implemented log file reopening on SIGHUP, which allows using
+ logrotate(8) for the Ganeti log files
+- Added a basic OOB helper script as an example
+
+
+Version 2.4.0 beta1
+-------------------
+
+*(Released Fri, 14 Jan 2011)*
+
+User-visible
+~~~~~~~~~~~~
+
+- Fixed timezone issues when formatting timestamps
+- Added support for node groups, available via ``gnt-group`` and other
+ commands
+- Added out-of-band framework and management, see :doc:`design
+ document <design-oob>`
+- Removed support for roman numbers from ``gnt-node list`` and
+ ``gnt-instance list``.
+- Allowed modification of master network interface via ``gnt-cluster
+ modify --master-netdev``
+- Accept offline secondaries while shutting down instance disks
+- Added ``blockdev_prefix`` parameter to Xen PVM and HVM hypervisors
+- Added support for multiple LVM volume groups
+- Avoid sorting nodes for ``gnt-node list`` if specific nodes are
+ requested
+- Added commands to list available fields:
+
+ - ``gnt-node list-fields``
+ - ``gnt-group list-fields``
+ - ``gnt-instance list-fields``
+
+- Updated documentation and man pages
+
+Integration
+~~~~~~~~~~~
+
+- Moved ``rapi_users`` file into separate directory, now named
+ ``…/ganeti/rapi/users``, ``cfgupgrade`` moves the file and creates a
+ symlink
+- Added new tool for running commands on many machines,
+ ``tools/ganeti-listrunner``
+- Implemented more verbose result in ``OpInstanceConsole`` opcode, also
+ improving the ``gnt-instance console`` output
+- Allowed customisation of disk index separator at ``configure`` time
+- Export node group allocation policy to :doc:`iallocator <iallocator>`
+- Added support for non-partitioned md disks in ``lvmstrap``
+- Added script to gracefully power off KVM instances
+- Split ``utils`` module into smaller parts
+- Changed query operations to return more detailed information, e.g.
+ whether an information is unavailable due to an offline node. To use
+ this new functionality, the LUXI call ``Query`` must be used. Field
+ information is now stored by the master daemon and can be retrieved
+ using ``QueryFields``. Instances, nodes and groups can also be queried
+ using the new opcodes ``OpQuery`` and ``OpQueryFields`` (not yet
+ exposed via RAPI). The following commands make use of this
+ infrastructure change:
+
+ - ``gnt-group list``
+ - ``gnt-group list-fields``
+ - ``gnt-node list``
+ - ``gnt-node list-fields``
+ - ``gnt-instance list``
+ - ``gnt-instance list-fields``
+ - ``gnt-debug locks``
+
+Remote API
+~~~~~~~~~~
+
+- New RAPI resources (see :doc:`rapi`):
+
+ - ``/2/modify``
+ - ``/2/groups``
+ - ``/2/groups/[group_name]``
+ - ``/2/groups/[group_name]/assign-nodes``
+ - ``/2/groups/[group_name]/modify``
+ - ``/2/groups/[group_name]/rename``
+ - ``/2/instances/[instance_name]/disk/[disk_index]/grow``
+
+- RAPI changes:
+
+ - Implemented ``no_install`` for instance creation
+ - Implemented OS parameters for instance reinstallation, allowing
+ use of special settings on reinstallation (e.g. for preserving data)
+
+Misc
+~~~~
+
+- Added IPv6 support in import/export
+- Pause DRBD synchronization while wiping disks on instance creation
+- Updated unittests and QA scripts
+- Improved network parameters passed to KVM
+- Converted man pages from docbook to reStructuredText
+
+
+Version 2.3.1
+-------------
+
+*(Released Mon, 20 Dec 2010)*
+
+Released version 2.3.1~rc1 without any changes.
+
+
+Version 2.3.1 rc1
+-----------------
+
+*(Released Wed, 1 Dec 2010)*
+
+- impexpd: Disable OpenSSL compression in socat if possible (backport
+ from master, commit e90739d625b, see :doc:`installation guide
+ <install-quick>` for details)
+- Changed unittest coverage report to exclude test scripts
+- Added script to check version format
+
+
+Version 2.3.0
+-------------
+
+*(Released Wed, 1 Dec 2010)*
+
+Released version 2.3.0~rc1 without any changes.
+
+
+Version 2.3.0 rc1
+-----------------
+
+*(Released Fri, 19 Nov 2010)*
+
+A number of bugfixes and documentation updates:
+
+- Update ganeti-os-interface documentation
+- Fixed a bug related to duplicate MACs or similar items which should be
+ unique
+- Fix breakage in OS state modify
+- Reinstall instance: disallow offline secondaries (fixes bug related to
+ OS changing but reinstall failing)
+- plus all the other fixes between 2.2.1 and 2.2.2
+
+
+Version 2.3.0 rc0
+-----------------
*(Released Tue, 2 Nov 2010)*
- Ignore failures while shutting down instances during failover from
offline node
- Exit daemon's bootstrap process only once daemon is ready
-- Export more information via ``LUQueryInstances``/remote API
+- Export more information via ``LUInstanceQuery``/remote API
- Improved documentation, QA and unittests
- RAPI daemon now watches ``rapi_users`` all the time and doesn't need a
restart if the file was created or changed
- Added LUXI protocol version sent with each request and response,
allowing detection of server/client mismatches
-- Moved the Python scripts among gnt-* and ganeti-* modules
+- Moved the Python scripts among gnt-* and ganeti-* into modules
- Moved all code related to setting up SSH to an external script,
``setup-ssh``
- Infrastructure changes for node group support in future versions
+Version 2.2.2
+-------------
+
+*(Released Fri, 19 Nov 2010)*
+
+A few small bugs fixed, and some improvements to the build system:
+
+- Fix documentation regarding conversion to drbd
+- Fix validation of parameters in cluster modify (``gnt-cluster modify
+ -B``)
+- Fix error handling in node modify with multiple changes
+- Allow remote imports without checked names
+
+
Version 2.2.1
-------------
see the ``ganeti-os-interface(7)`` manpage and look for
``EXP_SIZE_FD``
+
+Version 2.1.8
+-------------
+
+*(Released Tue, 16 Nov 2010)*
+
+Some more bugfixes. Unless critical bugs occur, this will be the last
+2.1 release:
+
+- Fix case of MAC special-values
+- Fix mac checker regex
+- backend: Fix typo causing “out of range” error
+- Add missing --units in gnt-instance list man page
+
+
Version 2.1.7
-------------