Upgrade to Elastic 8.16.0

edit

Before you upgrade to 8.16.0, it’s important to take some preparation steps. These steps vary based on your current version:

Upgrading from a release candidate build, such as 8.0.0-rc1 or 8.0.0-rc2, is not supported. Pre-releases should only be used for testing in a temporary environment.

Prepare to upgrade from an earlier 8.x version

edit
  1. Review the breaking changes for each product you use and make the necessary changes so your code is compatible with 8.16.0:

    • Make sure you check the breaking changes for each minor release up to 8.16.0.
    • If you are using machine learning datafeeds that contain discontinued search or query domain specific language (DSL), the upgrade will fail. In 5.6.5 and later, the Upgrade Assistant provides information about which datafeeds need to be updated.
  2. If you use any Elasticsearch plugins, make sure there is a version of each plugin that is compatible with Elasticsearch version 8.16.0.
  3. Test the upgrade in an isolated environment before upgrading your production cluster.
  4. Make sure you have a current snapshot before you start the upgrade.

    You cannot downgrade Elasticsearch nodes after upgrading. If you cannot complete the upgrade process, you will need to restore from the snapshot.

  5. If you use a separate monitoring cluster, you should upgrade the monitoring cluster before the production cluster. In general, the monitoring cluster and the clusters being monitored should be running the same version of the stack. A monitoring cluster cannot monitor production clusters running newer versions of the stack. If necessary, the monitoring cluster can monitor production clusters running the latest release of the previous major version.

Prepare to upgrade from 7.x

edit

To upgrade to 8.16.0 from 7.16 or earlier, you must first upgrade to 7.17. This enables you to use the Upgrade Assistant to identify and resolve issues, reindex indices created before 7.0, and then perform a rolling upgrade.

Upgrading to 7.17 before upgrading to 8.16.0 is required even if you opt to do a full-cluster restart of your Elasticsearch cluster. Alternatively, you can create a new 8.16.0 deployment and reindex from remote. For more information, see Reindex to upgrade.

Beats and Logstash 7.17 are compatible with Elasticsearch 8.16.0 to give you flexibility in scheduling the upgrade.

Remote cluster compatibility

If you use cross-cluster search, note that 8.16.0 can only search remote clusters running the previous minor version or later. For more information, see Searching across clusters.

If you use cross-cluster replication, a cluster that contains follower indices must run the same or newer version as the remote cluster. For more information, see Cross cluster replication for version compatibility matrix.

You can view your remote clusters from Stack Management > Remote Clusters.

  1. Use the Upgrade Assistant to prepare for your upgrade from 7.17 to 8.16.0. The Upgrade Assistant identifies deprecated settings and guides you through resolving issues and reindexing indices created before 7.0. Make sure you have a current snapshot before making configuration changes or reindexing.

    You must resolve all critical issues before proceeding with the upgrade.

  2. Review the deprecation logs from the Upgrade Assistant to determine if your applications are using features that are not supported or behave differently in 8.x. See the breaking changes for more information about changes in 8.16.0 that could affect your application.

    Make sure you check the breaking changes for each minor 8.x release up to 8.16.0.

  3. Make the recommended changes to ensure that your applications continue to operate as expected after the upgrade.

    As a temporary solution, you can submit requests to 8.x using the 7.x syntax with the REST API compatibility mode. While this enables you to submit requests that use the old syntax, it does not guarantee the same behavior. REST API compatibility should be a bridge to smooth out the upgrade process, not a long term strategy. For more information, see REST API compatibility.

  4. If you use any Elasticsearch plugins, make sure there is a version of each plugin that is compatible with Elasticsearch version 8.16.0.
  5. Test the upgrade in an isolated environment before upgrading your production cluster.
  6. Make sure you have a current snapshot before you start the upgrade.

    You cannot downgrade Elasticsearch nodes after upgrading. If you cannot complete the upgrade process, you will need to restore from the snapshot.

  7. If you use a separate monitoring cluster, you should upgrade the monitoring cluster before the production cluster. In general, the monitoring cluster and the clusters being monitored should be running the same version of the stack. A monitoring cluster cannot monitor production clusters running newer versions of the stack. If necessary, the monitoring cluster can monitor production clusters running the latest release of the previous major version.