-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
[Ingest Manager] Agent atomic installer #21745
[Ingest Manager] Agent atomic installer #21745
Conversation
Pinging @elastic/ingest-management (Team:Ingest Management) |
/package |
@ruflin OK to backport this to 7.10? |
@ph I'm not sure we should backport this to 7.10 even though I agree it would be nice to have. This mainly fixes an issue about a partial upgrade? Is it a bug or an enhancement? ;-) |
@ruflin this also fixes issue we see when agent is installed, enrolled and restarted quickly. on windows we see |
Well, the Should we have some delay/backoff when starting the subprocess? |
@michalpristas Can you link the issue for the bug in that PR description? |
Thanks @michalpristas for the clarification, @ruflin I think its worth to have it shipped in 7.10. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me.
[Ingest Manager] Agent atomic installer (elastic#21745)
[Ingest Manager] Agent atomic installer (elastic#21745)
…dependencies-goals * upstream/master: (46 commits) Use badger code from upstream repository (elastic#21705) Disable writes sync in persistent cache (elastic#21754) Make API address and Shard ID required in Cloud Foundry settings (elastic#21759) [CI] Support skip-ci label (elastic#21377) Increase recommended memory when deploying in Cloud foundry (elastic#21755) typofix for dns timeout configuration option (elastic#21069) chore: create CI artifacts for DEV usage (elastic#21645) [Ingest Manager] Atomic installed forgotten changelog elastic#21780 [Ingest Manager] Agent atomic installer (elastic#21745) Add missing configuration annotations (elastic#21736) [Filebeat] Add check for context.DeadlineExceeded error (elastic#21732) Remove kafka partition ISR from Metricbeat docs (elastic#21709) Skip flaky test with oauth2 config in httpjson input (elastic#21749) Fix for azure retrieve resource by ids (elastic#21711) Update obs app links (elastic#21682) fix: update fleet test suite name (elastic#21738) Remove dot from file.extension value in Auditbeat FIM (elastic#21644) Fix leaks with metadata processors (elastic#16349) Add istiod metricset (elastic#21519) [Ingest Manager] Change Sync/Close call order (elastic#21735) ...
…ne-2.0-arm * upstream/master: (93 commits) Fix non-windows fields on system/filesystem (elastic#21758) disable TestReceiveEventsAndMetadata/TestSocketCleanup/TestReceiveNewEventsConcurrently in Windows (elastic#21750) Use badger code from upstream repository (elastic#21705) Disable writes sync in persistent cache (elastic#21754) Make API address and Shard ID required in Cloud Foundry settings (elastic#21759) [CI] Support skip-ci label (elastic#21377) Increase recommended memory when deploying in Cloud foundry (elastic#21755) typofix for dns timeout configuration option (elastic#21069) chore: create CI artifacts for DEV usage (elastic#21645) [Ingest Manager] Atomic installed forgotten changelog elastic#21780 [Ingest Manager] Agent atomic installer (elastic#21745) Add missing configuration annotations (elastic#21736) [Filebeat] Add check for context.DeadlineExceeded error (elastic#21732) Remove kafka partition ISR from Metricbeat docs (elastic#21709) Skip flaky test with oauth2 config in httpjson input (elastic#21749) Fix for azure retrieve resource by ids (elastic#21711) Update obs app links (elastic#21682) fix: update fleet test suite name (elastic#21738) Remove dot from file.extension value in Auditbeat FIM (elastic#21644) Fix leaks with metadata processors (elastic#16349) ...
* [Ingest Manager] Syncing unpacked files (#21706) [Ingest Manager] Syncing unpacked files (#21706) * [Ingest Manager] Change Sync/Close call order (#21735) [Ingest Manager] Change Sync/Close call order (#21735) * [Ingest Manager] Agent atomic installer (#21745) [Ingest Manager] Agent atomic installer (#21745)
* [Ingest Manager] Syncing unpacked files (#21706) [Ingest Manager] Syncing unpacked files (#21706) * [Ingest Manager] Change Sync/Close call order (#21735) [Ingest Manager] Change Sync/Close call order (#21735) * [Ingest Manager] Agent atomic installer (#21745) [Ingest Manager] Agent atomic installer (#21745)
What does this PR do?
This PR makes unpacking an "atomic" operation by unpacking to temporary location and then moving it to the correct place, this should solve some rare issues which manifests when agent got killed during installation of beats and results in half-unpacked archive to be understood as correct installation
I tested this change on darwin/linux/windows and using local e2e test suite.
Fixes: #21718
Why is it important?
Makes agent more reliable
Checklist
CHANGELOG.next.asciidoc
orCHANGELOG-developer.next.asciidoc
.