Upgrading Logstash

edit

Before upgrading Logstash:

  • Consult the breaking changes docs.
  • Read the Release Notes.
  • Test upgrades in a development environment before upgrading your production cluster.

While upgrading Logstash:

  • If you use monitoring, you must re-use the data directory when you upgrade Logstash. Otherwise, the Logstash node is assigned a new persistent UUID and becomes a new node in the monitoring data.

If you’re upgrading other products in the stack, also read the Elastic Stack Installation and Upgrade Guide.

See the following topics for information about upgrading Logstash:

When to upgrade

edit

Fresh installations can and should start with the same version across the Elastic Stack.

Elasticsearch 8.0 does not require Logstash 8.0. An Elasticsearch 8.0 cluster will happily receive data from earlier versions of Logstash via the default HTTP communication layer. This provides some flexibility to decide when to upgrade Logstash relative to an Elasticsearch upgrade. It may or may not be convenient for you to upgrade them together, and it is not required to be done at the same time as long as Elasticsearch is upgraded first.

You should upgrade in a timely manner to get the performance improvements that come with Logstash 8.0, but do so in the way that makes the most sense for your environment.

When not to upgrade

edit

If any Logstash plugin that you require is not compatible with Logstash 8.0, then you should wait until it is ready before upgrading.

Although we make great efforts to ensure compatibility, Logstash 8.0 is not completely backwards compatible. As noted in the Elastic Stack upgrade guide, you should not upgrade Logstash 8.0 before you upgrade Elasticsearch 8.0. This is both practical and because some Logstash 8.0 plugins may attempt to use features of Elasticsearch 8.0 that did not exist in earlier versions.

For example, if you attempt to send the 8.x template to a cluster before Elasticsearch 8.0, then all indexing likely fail. If you use your own custom template with Logstash, then this issue can be ignored.