Skip to content

Update the Upgrading Using a Direct Download guide section.#13684

Merged
andsel merged 3 commits intoelastic:mainfrom
andsel:fix/update_steps_to_upgrade_from_direct_download
Feb 9, 2022
Merged

Update the Upgrading Using a Direct Download guide section.#13684
andsel merged 3 commits intoelastic:mainfrom
andsel:fix/update_steps_to_upgrade_from_direct_download

Conversation

@andsel
Copy link
Copy Markdown
Contributor

@andsel andsel commented Jan 26, 2022

PREVIEW: https://logstash_13684.docs-preview.app.elstc.co/guide/en/logstash/master/upgrading-using-direct-download.html

Release notes

[rn:skip]

What does this PR do?

During the time Logstash switched from a set of Ruby files plus one fat jar to multiple jars, with configuration files
and shell scripts that also needs to be updated. It's not anymore sufficient to suggest to unpack a new distribution
over an existing one. This is problematic when we add jars from version to version because drive to the pollution
of the classpath.

This commit redefines to steps to do this, in a safer way, backing up data and config folders.

Why is it important/What is the impact to the user?

Checklist

  • My code follows the style guidelines of this project
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have made corresponding change to the default configuration files (and/or docker env variables)
  • I have added tests that prove my fix is effective or that my feature works

Author's Checklist

  • [ ]

How to test this PR locally

Related issues

Use cases

Screenshots

Logs

During the time Logstash switched from a set of Ruby files plus one fat jar to multiple jars, with configuration files
and shell scripts that also needs to be updated. It's not anymore sufficient to suggest to unpack a new distribution
over an existing one. This is problematic when we add jars from version to version because drive to the pollution
of the classpath.

This commit redefines to steps to do this, in a safer way, backing up data and config folders.
Copy link
Copy Markdown
Contributor

@karenzone karenzone left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor formatting and wording suggestions for your consideration.
FYI: I usually try to validate procedures as part of a review. I did not test these steps.

Comment on lines 78 to 79
1. Shut down your Logstash pipeline, including any inputs that send events to Logstash.
2. Download the https://www.elastic.co/downloads/logstash[Logstash installation file] that matches your host environment.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Shut down your Logstash pipeline, including any inputs that send events to Logstash.
2. Download the https://www.elastic.co/downloads/logstash[Logstash installation file] that matches your host environment.
. Shut down your Logstash pipeline, including any inputs that send events to Logstash.
. Download the https://www.elastic.co/downloads/logstash[Logstash installation file] that matches your host environment.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This notation sets up autonumbering. :-)

Comment on lines +80 to +84
3. Backup your `config/` and `data/` folders in a temporary space.
4. Remove your Logstash directory.
5. Unpack the installation file into the same folder your existing Logstash directory was present.
6. Restore the `config/` and `data/` folders that was previously saved, overwriting the folders created during the unpack operation.
7. Test your configuration file with the `logstash --config.test_and_exit -f <configuration-file>` command.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
3. Backup your `config/` and `data/` folders in a temporary space.
4. Remove your Logstash directory.
5. Unpack the installation file into the same folder your existing Logstash directory was present.
6. Restore the `config/` and `data/` folders that was previously saved, overwriting the folders created during the unpack operation.
7. Test your configuration file with the `logstash --config.test_and_exit -f <configuration-file>` command.
. Backup your `config/` and `data/` folders in a temporary space.
. Delete your Logstash directory.
. Unpack the installation file into the folder that contained the Logstash directory that you just deleted.
. Restore the `config/` and `data/` folders that were previously saved, overwriting the folders created during the unpack operation.
. Test your configuration file with the `logstash --config.test_and_exit -f <configuration-file>` command.

Configuration options for
some Logstash plugins have changed in the 7.x release.
5. Restart your Logstash pipeline after updating your configuration file.
8. Restart your Logstash pipeline after updating your configuration file.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
8. Restart your Logstash pipeline after updating your configuration file.
. Restart your Logstash pipeline after updating your configuration file.

@andsel
Copy link
Copy Markdown
Contributor Author

andsel commented Jan 27, 2022

Thanks @karenzone
I've integrated you suggestion and executed the steps upgrading a 7.4to a 7.16 and a 6.8 to 7.16, the steps listed were ok.
The only doubt I have, which is nor covered by the other update methods, is that if a user previously installed plugins that's not part of the distribution, he has to remember to manually reinstall those.

Copy link
Copy Markdown
Contributor

@karenzone karenzone left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I left one comment inline. Otherwise, builds cleanly and LGTM. Thanks for your work on this.

Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
@andsel andsel merged commit 30b9ad8 into elastic:main Feb 9, 2022
andsel added a commit to andsel/logstash that referenced this pull request Feb 9, 2022
…13684)

During the time Logstash switched from a set of Ruby files plus one fat jar to multiple jars, with configuration files
and shell scripts that also needs to be updated. It's not anymore sufficient to suggest to unpack a new distribution
over an existing one. This is problematic when we add jars from version to version because drive to the pollution
of the classpath.

This commit redefines to steps to do this, in a safer way, backing up data and config folders.

Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com
(cherry picked from commit 30b9ad8)
andsel added a commit to andsel/logstash that referenced this pull request Feb 9, 2022
…13684)

During the time Logstash switched from a set of Ruby files plus one fat jar to multiple jars, with configuration files
and shell scripts that also needs to be updated. It's not anymore sufficient to suggest to unpack a new distribution
over an existing one. This is problematic when we add jars from version to version because drive to the pollution
of the classpath.

This commit redefines to steps to do this, in a safer way, backing up data and config folders.

Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com
(cherry picked from commit 30b9ad8)
andsel added a commit that referenced this pull request Feb 9, 2022
… section. (#13684) (#13741)

Clean backport of #13684 to branch `8.1`

----
Original comment

During the time Logstash switched from a set of Ruby files plus one fat jar to multiple jars, with configuration files
and shell scripts that also needs to be updated. It's not anymore sufficient to suggest to unpack a new distribution
over an existing one. This is problematic when we add jars from version to version because drive to the pollution
of the classpath.

This commit redefines to steps to do this, in a safer way, backing up data and config folders.

Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com
(cherry picked from commit 30b9ad8)
andsel added a commit that referenced this pull request Feb 9, 2022
… section. (#13684) (#13742)

Clean backport of #13684 to branch `8.0`

----
Original comment

During the time Logstash switched from a set of Ruby files plus one fat jar to multiple jars, with configuration files
and shell scripts that also needs to be updated. It's not anymore sufficient to suggest to unpack a new distribution
over an existing one. This is problematic when we add jars from version to version because drive to the pollution
of the classpath.

This commit redefines to steps to do this, in a safer way, backing up data and config folders.


Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com
(cherry picked from commit 30b9ad8)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants