Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add upgrade directions in FAQ #809

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

Conversation

jkowall
Copy link
Collaborator

@jkowall jkowall commented Nov 30, 2024

Which problem is this PR solving?

Resolves part of #117

Description of the changes

Add to FAQ

How was this change tested?

make develop

Checklist

Signed-off-by: Jonah Kowall <[email protected]>
Copy link

netlify bot commented Nov 30, 2024

Deploy Preview for romantic-neumann-1959d7 ready!

Name Link
🔨 Latest commit 18e1057
🔍 Latest deploy log https://app.netlify.com/sites/romantic-neumann-1959d7/deploys/674b71e05c7609000812b3c4
😎 Deploy Preview https://deploy-preview-809--romantic-neumann-1959d7.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

@@ -28,6 +28,10 @@ One benefit of Cassandra backend is simplified maintenance due to its native sup

[issue-166]: https://github.com/jaegertracing/jaeger/issues/166

## How should I upgrade to a new version?

Jaeger is stateless for the services themselves, the state all lives in the data store. We try to avoid any kinds of breaking changes in our upgrades, so typically the order does not matter. However, upgrades should be done with the following order of operations. If you are running Jaeger in a fully distributed environment you should upgrade the Jaeger query role first, followed by the collector role. You should note that upgrading both sides of the Kafka data flow should be done as close to simultaneous as possible to avoid issues with data being written and read by different binaries.
Copy link
Member

Choose a reason for hiding this comment

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

It's not clear to me what exactly is the objective of this. The question is very open ended. I could see giving a bit most structured answer to that.

Should this really be in FAQ? I'd thin Deployment page would be a natural home for a section "Upgrading Jaeger"

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

The objective is to give guidance on the order to upgrade components per #117 What other guidance do you think we should provide?

I don't think deployment has much on lifecycle aside from cradle, but we can add it there instead of here.

Copy link
Member

Choose a reason for hiding this comment

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

Upgrading versions is part of the deployment story, so I would naturally look there for information, not in the FAQ.

As far as text:

Jaeger microservices (components) are stateless, all the state lives in the data store(s). When no breaking changes are introduced in a release the order of upgrades for individual Jaeger components does not matter.

We try to avoid any kinds of breaking changes in new versions, but sometimes they are unavoidable and will be clearly called out in the release notes. In those cases the safest upgrade order is by starting from the end of the ingestion pipeline: first jaeger-query, then jaeger-ingester if using Kafka, then jaeger-collector. This order ensures that the receiving component is running on a newer version and is capable of understanding any protocol changes from the other components earlier in the pipeline before those are upgraded.

Finally, sometimes we introduce storage schema changes that may require some pro-active steps before upgrading Jaeger components. Such changes will always be marked as breaking changes in the release notes and contain specific instructions for upgrading.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants