elasticsearch/docs/reference/upgrade.asciidoc
David Turner 4782cf4d91
Add docs for pre-release version compatibility (#78317)
The reference manual includes docs on version compatibility in various
places, but it's not clear that these docs only apply to released
versions and that the rules for pre-release versions are stricter than
folks expect. This commit adds some words to the docs for unreleased
versions which explains this subtlety.
2021-09-27 16:56:35 +01:00

108 lines
3.9 KiB
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

[[setup-upgrade]]
= Upgrade {es}
[partintro]
--
{es} can usually be upgraded using a <<rolling-upgrades,Rolling upgrade>>
process so upgrading does not interrupt service. Rolling upgrades are supported:
* Between minor versions
* From 5.6 to 6.8
* From 6.8 to {prev-major-version}
* From {prev-major-version} to {version}
ifeval::[ "{bare_version}" != "{minor-version}.0" ]
* From any version since {minor-version}.0 to {version}
endif::[]
[TIP]
====
For rolling upgrades between major versions (e.g., 5.6 to 6.8), we recommend
using the {kibana-ref}/upgrade-assistant.html[Kibana Upgrade Assistant].
The upgrade assistant identifies deprecated settings in your cluster and guides
you through the process of resolving issues, including reindexing.
We also recommend checking your <<deprecation-logging,deprecation logs>> for any
other functionality that may have changed.
====
The following table shows the recommended upgrade paths to {version}.
[cols="<1,3",options="header",]
|====
|Upgrade from
|Recommended upgrade path to {version}
ifeval::[ "{bare_version}" != "{minor-version}.0" ]
|A previous {minor-version} version (e.g., {minor-version}.0)
|<<rolling-upgrades,Rolling upgrade>> to {version}
endif::[]
|{prev-major-version}
|<<rolling-upgrades,Rolling upgrade>> to {version}
|7.07.15
a|
. https://www.elastic.co/guide/en/elasticsearch/reference/{prev-major-version}/rolling-upgrades.html[Rolling upgrade] to {prev-major-version}
. <<rolling-upgrades,Rolling upgrade>> to {version}
|6.8
a|
. https://www.elastic.co/guide/en/elasticsearch/reference/{prev-major-version}/rolling-upgrades.html[Rolling upgrade] to {prev-major-version}
. <<rolling-upgrades,Rolling upgrade>> to {version}
|6.06.7
a|
. https://www.elastic.co/guide/en/elasticsearch/reference/6.8/rolling-upgrades.html[Rolling upgrade] to 6.8
. https://www.elastic.co/guide/en/elasticsearch/reference/{prev-major-version}/rolling-upgrades.html[Rolling upgrade] to {prev-major-version}
. <<rolling-upgrades,Rolling upgrade>> to {version}
|====
[WARNING]
====
The upgrade path from 6.8 to 7.0 is *not* supported (both full cluster restart and rolling upgrade).
====
To upgrade directly to {version} from 6.7 or earlier, you must shut down the
cluster, install {version}, and restart. For more information, see
<<restart-upgrade, Full cluster restart upgrade>>.
[WARNING]
====
In-place downgrades to earlier versions are *not* supported. To downgrade to an
earlier version, <<snapshots-restore-snapshot,restore a snapshot>> taken prior
to the version upgrade.
====
{es} can read indices created in the previous major version. If you
have indices created in 5.x or before, you must reindex or delete them
before upgrading to {version}. {es} nodes will fail to start if
incompatible indices are present. Snapshots of 5.x or earlier indices cannot be
restored to a 7.x cluster even if they were created by a 6.x cluster. For
information about upgrading old indices, see <<reindex-upgrade, Reindex to upgrade>>.
When upgrading to a new version of {es}, you need to upgrade each
of the products in your Elastic Stack. For more information, see the
{stack-ref}/upgrading-elastic-stack.html[Elastic Stack Installation and Upgrade Guide].
ifeval::["{release-state}"!="released"]
[[upgrade-pre-release]]
NOTE: This documentation is for {es} {version}, which is not yet released. You
may run a pre-release build of {es} for testing, and you may upgrade from an
earlier released version to a pre-release build of {es} {version} if permitted
by the compatibility table above, but upgrading from a pre-release build to
another build (whether released or not) is unsupported. Upgrading a pre-release
build may result in errors or may appear to succeed having silently lost some
data. You should discard the contents of a cluster running a pre-release build
when moving to a different build.
endif::[]
--
include::upgrade/rolling_upgrade.asciidoc[]
include::upgrade/cluster_restart.asciidoc[]
include::upgrade/reindex_upgrade.asciidoc[]