====
+Version 2.13.2
+--------------
+
+*(Released Mon, 13 Jul 2015)*
+
+Incompatible/important changes
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+- This release contains a fix for the problem that different encodings in
+ SSL certificates can break RPC communication (issue 1094). The fix makes
+ it necessary to rerun 'gnt-cluster renew-crypto --new-node-certificates'
+ after the cluster is fully upgraded to 2.13.2
+
+Other fixes and known issues
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Inherited from 2.12:
+
+- Fixed Issue #1115: Race between starting WConfD and updating the config
+- Fixed Issue #1114: Binding RAPI to a specific IP makes the watcher
+ restart the RAPI
+- Fixed Issue #1100: Filter-evaluation for run-time data filter
+- Better handling of the "crashed" Xen state
+- The watcher can be instructed to skip disk verification
+- Reduce amount of logging on successful requests
+- Prevent multiple communication NICs being created for instances
+- The ``htools`` now properly work also on shared-storage clusters
+- Instance moves now work properly also for the plain disk template
+- Various improvements to the documentation have been added
+
+Known issues:
+- Issue #1104: gnt-backup: dh key too small
+
+
+Version 2.13.1
+--------------
+
+*(Released Tue, 16 Jun 2015)*
+
+Incompatible/important changes
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+- The SSH security changes reduced the number of nodes which can SSH into
+ other nodes. Unfortunately enough, the Ganeti implementation of migration
+ for the xl stack of Xen required SSH to be able to migrate the instance,
+ leading to a situation where full movement of an instance around the cluster
+ was not possible. This version fixes the issue by using socat to transfer
+ instance data. While socat is less secure than SSH, it is about as secure as
+ xm migrations, and occurs over the secondary network if present. As a
+ consequence of this change, Xen instance migrations using xl cannot occur
+ between nodes running 2.13.0 and 2.13.1.
+
+Other fixes and known issues
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Inherited from 2.12:
+
+- Fixed Issue #1082: RAPI is unresponsive after master-failover
+- Fixed Issue #1083: Cluster verify reports existing instance disks on
+ non-default VGs as missing
+- Fixed Issue #1101: Modifying the storage directory for the shared-file disk
+ template doesn't work
+- Fixed a possible file descriptor leak when forking jobs
+- Fixed missing private parameters in the environment for OS scripts
+- Fixed a performance regression when handling configuration
+ (only upgrade it if it changes)
+- Adapt for compilation with GHC7.8 (compiles with warnings;
+ cherrypicked from 2.14)
+
+Known issues:
+- Issue #1094: Mismatch in SSL encodings breaks RPC communication
+- Issue #1104: Export fails: key is too small
+
+
+Version 2.13.0
+--------------
+
+*(Released Tue, 28 Apr 2015)*
+
+Incompatible/important changes
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+- Ganeti now internally retries the instance creation opcode if opportunistic
+ locking did not acquire nodes with enough free resources. The internal retry
+ will not use opportunistic locking. In particular, instance creation, even
+ if opportunistic locking is set, will never fail with ECODE_TEMP_NORES.
+- The handling of SSH security had undergone a significant change. From
+ this version on, each node has an individual SSH key pair instead of
+ sharing one with all nodes of the cluster. From now on, we also
+ restrict SSH access to master candidates. This means that only master
+ candidates can ssh into other cluster nodes and all
+ non-master-candidates cannot. Refer to the UPGRADE notes
+ for further instructions on the creation and distribution of the keys.
+- Ganeti now checks hypervisor version compatibility before trying an instance
+ migration. It errors out if the versions are not compatible. Add the option
+ --ignore-hvversions to restore the old behavior of only warning.
+- Node tags starting with htools:migration: or htools:allowmigration: now have
+ a special meaning to htools(1). See hbal(1) for details.
+- The LXC hypervisor code has been repaired and improved. Instances cannot be
+ migrated and cannot have more than one disk, but should otherwise work as with
+ other hypervisors. OS script changes should not be necessary. LXC version
+ 1.0.0 or higher required.
+
+New features
+~~~~~~~~~~~~
+
+- A new job filter rules system allows to define iptables-like rules for the
+ job scheduler, making it easier to (soft-)drain the job queue, perform
+ maintenance, and rate-limit selected job types. See gnt-filter(8) for
+ details.
+- Ganeti jobs can now be ad-hoc rate limited via the reason trail.
+ For a set of jobs queued with "--reason=rate-limit:n:label", the job
+ scheduler ensures that not more than n will be scheduled to run at the same
+ time. See ganeti(7), section "Options", for details.
+- The monitoring daemon has now variable sleep times for the data
+ collectors. This currently means that the granularity of cpu-avg-load
+ can be configured.
+- The 'gnt-cluster verify' command now has the option
+ '--verify-ssh-clutter', which verifies whether Ganeti (accidentally)
+ cluttered up the 'authorized_keys' file.
+- Instance disks can now be converted from one disk template to another for many
+ different template combinations. When available, more efficient conversions
+ will be used, otherwise the disks are simply copied over.
+
+New dependencies
+~~~~~~~~~~~~~~~~
+
+- The monitoring daemon uses the PSQueue library. Be sure to install it
+ if you use Mond.
+- The formerly optional regex-pcre is now an unconditional dependency because
+ the new job filter rules have regular expressions as a core feature.
+
+Since 2.13.0 rc1
+~~~~~~~~~~~~~~~~~~
+
+The following issues have been fixed:
+
+- Bugs related to ssh-key handling of master candidates (issues 1045,
+ 1046, 1047)
+
+Fixes inherited from the 2.12 branch:
+
+- Upgrade from old versions (2.5 and 2.6) was failing (issues 1070, 1019).
+- gnt-network info outputs wrong external reservations (issue 1068)
+- Refuse to demote master from master capability (issue 1023)
+
+
+Version 2.13.0 rc1
+------------------
+
+*(Released Wed, 25 Mar 2015)*
+
+This was the first release candidate of the 2.13 series.
+All important changes are listed in the latest 2.13 entry.
+
+Since 2.13.0 beta1
+~~~~~~~~~~~~~~~~~~
+
+The following issues have been fixed:
+
+- Issue 1018: Cluster init (and possibly other jobs) occasionally fail to start
+
+
+Version 2.13.0 beta1
+--------------------
+
+*(Released Wed, 14 Jan 2015)*
+
+This was the first beta release of the 2.13 series. All important changes
+are listed in the latest 2.13 entry.
+
+
+ Version 2.12.6
+ --------------
+
+ *(Released Mon, 14 Dec 2015)*
+
+ Important changes and security notes
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Security release.
+
+ CVE-2015-7944
+
+ Ganeti provides a RESTful control interface called the RAPI. Its HTTPS
+ implementation is vulnerable to DoS attacks via client-initiated SSL
+ parameter renegotiation. While the interface is not meant to be exposed
+ publicly, due to the fact that it binds to all interfaces, we believe
+ some users might be exposing it unintentionally and are vulnerable. A
+ DoS attack can consume resources meant for Ganeti daemons and instances
+ running on the master node, making both perform badly.
+
+ Fixes are not feasible due to the OpenSSL Python library not exposing
+ functionality needed to disable client-side renegotiation. Instead, we
+ offer instructions on how to control RAPI's exposure, along with info
+ on how RAPI can be setup alongside an HTTPS proxy in case users still
+ want or need to expose the RAPI interface. The instructions are
+ outlined in Ganeti's security document: doc/html/security.html
+
+ CVE-2015-7945
+
+ Ganeti leaks the DRBD secret through the RAPI interface. Examining job
+ results after an instance information job reveals the secret. With the
+ DRBD secret, access to the local cluster network, and ARP poisoning,
+ an attacker can impersonate a Ganeti node and clone the disks of a
+ DRBD-based instance. While an attacker with access to the cluster
+ network is already capable of accessing any data written as DRBD
+ traffic is unencrypted, having the secret expedites the process and
+ allows access to the entire disk.
+
+ Fixes contained in this release prevent the secret from being exposed
+ via the RAPI. The DRBD secret can be changed by converting an instance
+ to plain and back to DRBD, generating a new secret, but redundancy will
+ be lost until the process completes.
+ Since attackers with node access are capable of accessing some and
+ potentially all data even without the secret, we do not recommend that
+ the secret be changed for existing instances.
+
+ Minor changes
+ ~~~~~~~~~~~~~
+
+ - Calculate correct affected nodes set in InstanceChangeGroup
+ (Issue 1144)
+ - Do not retry all requests after connection timeouts to prevent
+ repeated job submission
+ - Fix reason trails of expanding opcodes
+ - Make lockConfig call retryable
+ - Return the correct error code in the post-upgrade script
+ - Make OpenSSL refrain from DH altogether
+ - Fix upgrades of instances with missing creation time
+ - Make htools tolerate missing "dtotal" and "dfree" on luxi
+ - Fix default for --default-iallocator-params
+ - At IAlloc backend guess state from admin state
+ - Only search for Python-2 interpreters
+ - Handle Xen 4.3 states better
+ - replace-disks: fix --ignore-ipolicy
+ - Fix disabling of user shutdown reporting
+ - Fix operations on empty nodes by accepting allocation of 0 jobs
+ - Fix instance multi allocation for non-DRBD disks
+ - Allow more failover options when using the --no-disk-moves flag
+
+
Version 2.12.5
--------------