mirror of https://github.com/ceph/ceph
257 lines
9.0 KiB
ReStructuredText
257 lines
9.0 KiB
ReStructuredText
=============
|
|
Ceph Releases
|
|
=============
|
|
|
|
Current
|
|
-------
|
|
|
|
.. ceph_releases:: releases.yml
|
|
|
|
Timeline
|
|
--------
|
|
|
|
.. ceph_timeline:: releases.yml development nautilus mimic luminous kraken jewel infernalis hammer giant firefly emperor dumpling
|
|
|
|
.. _Nautilus: ../nautilus
|
|
.. _14.2.1: ../nautilus#v14-2-1-nautilus
|
|
.. _14.2.0: ../nautilus#v14-2-0-nautilus
|
|
|
|
.. _Mimic: ../mimic
|
|
.. _13.2.6: ../mimic#v13-2-6-mimic
|
|
.. _13.2.5: ../mimic#v13-2-5-mimic
|
|
.. _13.2.4: ../mimic#v13-2-4-mimic
|
|
.. _13.2.3: ../mimic#v13-2-3-mimic
|
|
.. _13.2.2: ../mimic#v13-2-2-mimic
|
|
.. _13.2.1: ../mimic#v13-2-1-mimic
|
|
.. _13.2.0: ../mimic#v13-2-0-mimic
|
|
|
|
.. _Luminous: ../luminous
|
|
.. _12.2.12: ../luminous#v12-2-12-luminous
|
|
.. _12.2.11: ../luminous#v12-2-11-luminous
|
|
.. _12.2.10: ../luminous#v12-2-10-luminous
|
|
.. _12.2.9: ../luminous#v12-2-9-luminous
|
|
.. _12.2.8: ../luminous#v12-2-8-luminous
|
|
.. _12.2.7: ../luminous#v12-2-7-luminous
|
|
.. _12.2.6: ../luminous#v12-2-6-luminous
|
|
.. _12.2.5: ../luminous#v12-2-5-luminous
|
|
.. _12.2.4: ../luminous#v12-2-4-luminous
|
|
.. _12.2.3: ../luminous#v12-2-3-luminous
|
|
.. _12.2.2: ../luminous#v12-2-2-luminous
|
|
.. _12.2.1: ../luminous#v12-2-1-luminous
|
|
.. _12.2.0: ../luminous#v12-2-0-luminous
|
|
|
|
.. _11.2.1: ../kraken#v11-2-1-kraken
|
|
.. _11.2.0: ../kraken#v11-2-0-kraken
|
|
.. _Kraken: ../kraken#v11-2-0-kraken
|
|
|
|
.. _11.0.2: ../kraken#v11-0-2-kraken
|
|
|
|
.. _10.2.11: ../jewel#v10-2-11-jewel
|
|
.. _10.2.10: ../jewel#v10-2-10-jewel
|
|
.. _10.2.9: ../jewel#v10-2-9-jewel
|
|
.. _10.2.8: ../jewel#v10-2-8-jewel
|
|
.. _10.2.7: ../jewel#v10-2-7-jewel
|
|
.. _10.2.6: ../jewel#v10-2-6-jewel
|
|
.. _10.2.5: ../jewel#v10-2-5-jewel
|
|
.. _10.2.4: ../jewel#v10-2-4-jewel
|
|
.. _10.2.3: ../jewel#v10-2-3-jewel
|
|
.. _10.2.2: ../jewel#v10-2-2-jewel
|
|
.. _10.2.1: ../jewel#v10-2-1-jewel
|
|
.. _10.2.0: ../jewel#v10-2-0-jewel
|
|
.. _Jewel: ../jewel#v10-2-0-jewel
|
|
|
|
.. _10.1.2: ../jewel#v10-1-2-jewel-release-candidate
|
|
.. _10.1.1: ../jewel#v10-1-1-jewel-release-candidate
|
|
.. _10.1.0: ../jewel#v10-1-0-jewel-release-candidate
|
|
.. _10.0.5: ../jewel#v10-0-5
|
|
.. _10.0.3: ../jewel#v10-0-3
|
|
.. _10.0.2: ../jewel#v10-0-2
|
|
.. _10.0.1: ../jewel#v10-0-1
|
|
.. _10.0.0: ../jewel#v10-0-0
|
|
|
|
.. _9.2.1: ../infernalis#v9-2-1-infernalis
|
|
.. _9.2.0: ../infernalis#v9-2-0-infernalis
|
|
.. _Infernalis: ../infernalis#v9-2-0-infernalis
|
|
|
|
.. _9.1.0: ../infernalis#v9-1-0
|
|
.. _9.0.3: ../infernalis#v9-0-3
|
|
.. _9.0.2: ../infernalis#v9-0-2
|
|
.. _9.0.1: ../infernalis#v9-0-1
|
|
.. _9.0.0: ../infernalis#v9-0-0
|
|
|
|
.. _0.94.10: ../hammer#v0-94-10-hammer
|
|
.. _0.94.9: ../hammer#v0-94-9-hammer
|
|
.. _0.94.8: ../hammer#v0-94-8-hammer
|
|
.. _0.94.7: ../hammer#v0-94-7-hammer
|
|
.. _0.94.6: ../hammer#v0-94-6-hammer
|
|
.. _0.94.5: ../hammer#v0-94-5-hammer
|
|
.. _0.94.4: ../hammer#v0-94-4-hammer
|
|
.. _0.94.3: ../hammer#v0-94-3-hammer
|
|
.. _0.94.2: ../hammer#v0-94-2-hammer
|
|
.. _0.94.1: ../hammer#v0-94-1-hammer
|
|
.. _0.94: ../hammer#v0-94-hammer
|
|
.. _Hammer: ../hammer#v0-94-hammer
|
|
|
|
.. _0.93: ../hammer#v0-93
|
|
.. _0.92: ../hammer#v0-92
|
|
.. _0.91: ../hammer#v0-91
|
|
.. _0.90: ../hammer#v0-90
|
|
.. _0.89: ../hammer#v0-89
|
|
.. _0.88: ../hammer#v0-88
|
|
|
|
.. _0.87.2: ../giant#v0-87-2-giant
|
|
.. _0.87.1: ../giant#v0-87-1-giant
|
|
.. _0.87: ../giant#v0-87-giant
|
|
.. _Giant: ../giant#v0-87-giant
|
|
|
|
.. _0.86: ../giant#v0-86
|
|
.. _0.85: ../giant#v0-85
|
|
.. _0.84: ../giant#v0-84
|
|
.. _0.83: ../giant#v0-83
|
|
.. _0.82: ../giant#v0-82
|
|
.. _0.81: ../giant#v0-81
|
|
|
|
.. _0.80.11: ../firefly#v0-80-11-firefly
|
|
.. _0.80.10: ../firefly#v0-80-10-firefly
|
|
.. _0.80.9: ../firefly#v0-80-9-firefly
|
|
.. _0.80.8: ../firefly#v0-80-8-firefly
|
|
.. _0.80.7: ../firefly#v0-80-7-firefly
|
|
.. _0.80.6: ../firefly#v0-80-6-firefly
|
|
.. _0.80.5: ../firefly#v0-80-5-firefly
|
|
.. _0.80.4: ../firefly#v0-80-4-firefly
|
|
.. _0.80.3: ../firefly#v0-80-3-firefly
|
|
.. _0.80.2: ../firefly#v0-80-2-firefly
|
|
.. _0.80.1: ../firefly#v0-80-1-firefly
|
|
.. _0.80: ../firefly#v0-80-firefly
|
|
.. _Firefly: ../firefly#v0-80-firefly
|
|
|
|
.. _0.79: ../firefly#v0-79
|
|
.. _0.78: ../firefly#v0-78
|
|
.. _0.77: ../firefly#v0-77
|
|
.. _0.76: ../firefly#v0-76
|
|
.. _0.75: ../firefly#v0-75
|
|
.. _0.74: ../firefly#v0-74
|
|
.. _0.73: ../firefly#v0-73
|
|
|
|
.. _0.72.2: ../emperor#v0-72-2-emperor
|
|
.. _0.72.1: ../emperor#v0-72-1-emperor
|
|
.. _0.72: ../emperor#v0-72-emperor
|
|
.. _Emperor: ../emperor#v0-72-emperor
|
|
|
|
.. _0.71: ../dumpling#v0-71
|
|
.. _0.70: ../dumpling#v0-70
|
|
.. _0.69: ../dumpling#v0-69
|
|
.. _0.68: ../dumpling#v0-68
|
|
|
|
.. _0.67.11: ../dumpling#v0-67-11-dumpling
|
|
.. _0.67.10: ../dumpling#v0-67-10-dumpling
|
|
.. _0.67.9: ../dumpling#v0-67-9-dumpling
|
|
.. _0.67.8: ../dumpling#v0-67-8-dumpling
|
|
.. _0.67.7: ../dumpling#v0-67-7-dumpling
|
|
.. _0.67.6: ../dumpling#v0-67-6-dumpling
|
|
.. _0.67.5: ../dumpling#v0-67-5-dumpling
|
|
.. _0.67.4: ../dumpling#v0-67-4-dumpling
|
|
.. _0.67.3: ../dumpling#v0-67-3-dumpling
|
|
.. _0.67.2: ../dumpling#v0-67-2-dumpling
|
|
.. _0.67.1: ../dumpling#v0-67-1-dumpling
|
|
.. _0.67: ../dumpling#v0-67-dumpling
|
|
.. _Dumpling: ../dumpling#v0-67-dumpling
|
|
|
|
Understanding the release cycle
|
|
-------------------------------
|
|
|
|
There is a new stable release cycle every nine (9) months, starting
|
|
after the Luminous release (12.2.0). Each stable release series will
|
|
receive a name (e.g., 'Mimic') and a major release number (e.g., 13
|
|
for Mimic because 'M' is the 13th letter of the alphabet).
|
|
|
|
Releases are named after a species of cephalopod (usually the common
|
|
name, since the latin names are harder to remember or pronounce).
|
|
|
|
Version numbers have three components, *x.y.z*. *x* identifies the release
|
|
cycle (e.g., 13 for Mimic). *y* identifies the release type:
|
|
|
|
* x.0.z - development releases (for early testers and the brave at heart)
|
|
* x.1.z - release candidates (for test clusters, brave users)
|
|
* x.2.z - stable/bugfix releases (for users)
|
|
|
|
This versioning convention started with the 9.y.z Infernalis cycle. Prior to
|
|
that, versions looked with 0.y for development releases and 0.y.z for stable
|
|
series.
|
|
|
|
Development releases (x.0.z)
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
Each development release (x.0.z) freezes the master development branch
|
|
and applies `integration and upgrade tests
|
|
<https://github.com/ceph/ceph/tree/master/qa/suites/>`_ before it is released. Once
|
|
released, there is no effort to backport fixes; developer focus is on
|
|
the next development release which is usually only a few weeks away.
|
|
|
|
* Development release every 4 to 8 weeks
|
|
* Intended for testing, not production deployments
|
|
* Full integration testing
|
|
* Upgrade testing from the last stable release(s)
|
|
* Every effort is made to allow *offline* upgrades from previous
|
|
development releases (meaning you can stop all daemons, upgrade, and
|
|
restart). No attempt is made to support online rolling upgrades
|
|
between development releases. This facilitates deployment of
|
|
development releases on non-production test clusters without
|
|
repopulating them with data.
|
|
|
|
Release candidates (x.1.z)
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
There is a feature release roughly six (6) weeks prior to the planned
|
|
initial stable release, after which focus shifts to stabilization and
|
|
bug fixes only.
|
|
|
|
* Release candidate release every 1-2 weeks
|
|
* Intended for final testing and validation of the upcoming stable release
|
|
|
|
Stable releases (x.2.z)
|
|
^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
Once the initial stable release is made (x.2.0), there are
|
|
semi-regular bug-fix point releases with bug fixes and (occasionally)
|
|
small feature backports. Bug fixes are accumulated and included in
|
|
the next point release.
|
|
|
|
* Stable point release every 4 to 6 weeks
|
|
* Intended for production deployments
|
|
* Bug fix backports for two full release cycles.
|
|
* Online, rolling upgrade support and testing from the last two (2)
|
|
stable release(s) (starting from Luminous).
|
|
* Online, rolling upgrade support and testing from prior stable point
|
|
releases
|
|
|
|
For each stable release:
|
|
|
|
* `Integration and upgrade tests
|
|
<https://github.com/ceph/ceph/tree/master/qa/suites/>`_ are run on a regular basis
|
|
and `their results <http://pulpito.ceph.com/>`_ analyzed by Ceph
|
|
developers.
|
|
* `Issues <http://tracker.ceph.com/projects/ceph/issues?query_id=27>`_
|
|
fixed in the development branch (master) are scheduled to be backported.
|
|
* When an issue found in the stable release is `reported
|
|
<http://tracker.ceph.com/projects/ceph/issues/new>`_, it is
|
|
triaged by Ceph developers.
|
|
* The `stable releases and backport team <http://tracker.ceph.com/projects/ceph-releases/wiki>`_
|
|
publishes ``point releases`` including fixes that have been backported to the stable release.
|
|
|
|
In the timeline above, the life time of a stable release series is
|
|
calculated to be approximately 18 months (i.e., two 9 month release
|
|
cycles) after the month of the first release. For example, Luminous
|
|
(12.2.z) will reach end of life (EOL) shortly after Nautilus (14.2.0) is
|
|
released. The lifetime of a release may vary because it depends on how
|
|
quickly the stable releases are published.
|
|
|
|
The life time for Jewel and Kraken are slightly different. Prior to
|
|
Luminous, only every other stable release was an "LTS" release.
|
|
Therefore,
|
|
|
|
* Upgrades are supported from Jewel -> Kraken -> Luminous and Jewel -> Luminous.
|
|
* Upgrades from Jewel or Kraken must upgrade to Luminous first before proceeding further (e.g., Kraken -> Luminous -> Mimic but not Kraken -> Mimic).
|
|
* Jewel will be maintained until Mimic is released in the spring of 2018.
|
|
* Kraken is no longer maintained.
|