Upgrade Elasticsearch

edit

Upgrade Elasticsearch

edit

Clusters with a Gold or Platinum license that are upgrading to 6.3 will need to explicitly set xpack.security.enabled: true in elasticsearch.yml to upgrade successfully. If this value is not set, the cluster will be unable to form after upgrade.

Elasticsearch can usually be upgraded using a Rolling upgrade process so upgrading does not interrupt service. However, you might need to Reindex to upgrade indices created in older versions. Upgrades across major versions prior to 6.0 require a Full cluster restart.

When upgrading to a new version of Elasticsearch, you need to upgrade each of the products in your Elastic Stack. The steps you need to take to upgrade differ depending on which products you are using. Want a list that’s tailored to your stack? Try out our Interactive Upgrade Guide. For more information about upgrading your stack, see Upgrading the Elastic Stack.

Before upgrading Elasticsearch:

  • Review the breaking changes for changes that affect your application.
  • Check the deprecation log to see if you are using any deprecated features.
  • If you use custom plugins, make sure compatible versions are available.
  • Test upgrades in a dev environment before upgrading your production cluster.
  • Back up your data before upgrading. You cannot roll back to an earlier version unless you have a backup of your data.

The following table shows when you can perform a rolling upgrade, when you need to reindex or delete old indices, and when a full cluster restart is required.

Upgrade From Upgrade To Supported Upgrade Type

5.x

5.y

Rolling upgrade (where y > x)

5.6

6.x

Rolling upgrade [1]

5.0-5.5

6.x

Full cluster restart [1]

<5.x

6.x

Reindex to upgrade

6.x

6.y

Rolling upgrade (where y > x)

Elasticsearch can read indices created in the previous major version. Older indices must be reindexed or deleted. Elasticsearch 6.x can use indices created in Elasticsearch 5.x, but not those created in Elasticsearch 2.x or before. Elasticsearch 5.x can use indices created in Elasticsearch 2.x, but not those created in 1.x or before.

This also applies to indices backed up with snapshot and restore. If an index was originally created in 2.x, it cannot be restored to a 6.x cluster even if the snapshot was created by a 5.x cluster.

Elasticsearch nodes will fail to start if incompatible indices are present.

For information about how to upgrade old indices, see Reindex to upgrade.