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

Bundle Metricbeat with Elasticsearch #49399

Closed
jasontedor opened this issue Nov 20, 2019 · 13 comments
Closed

Bundle Metricbeat with Elasticsearch #49399

jasontedor opened this issue Nov 20, 2019 · 13 comments
Labels
:Data Management/Monitoring :Delivery/Packaging RPM and deb packaging, tar and zip archives, shell and batch scripts >feature Team:Data Management Meta label for data/management team Team:Delivery Meta label for Delivery team v8.0.0-alpha1

Comments

@jasontedor
Copy link
Member

For the 8.0.0 release of Elasticsearch, we are aiming to remove monitoring internal collectors/exporters (#47214, #47215). While Metricbeat can now monitor Elasticsearch, the removal of internal collection leaves our users in a position where they have to take extra steps to do such monitoring via Metricbeat. We want to keep the experience of monitoring Elasticsearch simple. To that end, we are aiming to bundle Metricbeat with Elasticsearch and have its lifecycle managed by Elasticsearch. This saves the user from having to install Metricbeat, and also manage its lifecycle.

@jasontedor jasontedor added >feature :Delivery/Packaging RPM and deb packaging, tar and zip archives, shell and batch scripts :Data Management/Monitoring v8.0.0 labels Nov 20, 2019
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-core-infra (:Core/Infra/Packaging)

@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-core-features (:Core/Features/Monitoring)

@cachedout
Copy link
Contributor

Hi @jasontedor. Thanks for filing this.

Given that Stack Monitoring can also consume ES logs, do you think it would be worth discussing whether or not to also bundle Filebeat in addition to Metricbeat? It is not required for the monitoring application to function, but provides additional functionality on top of the default metrics. Thoughts?

@beiske
Copy link
Member

beiske commented Dec 4, 2019

we are aiming to bundle Metricbeat with Elasticsearch and have its lifecycle managed by Elasticsearch

@jasontedor Does this mean enabling and disabling the bundled Metricbeat be a dynamic setting or will it potentially require a reboot of Elasticsearch?

@jasontedor
Copy link
Member Author

It will be a restart of Elasticsearch. Elasticsearch can't fork a native process after startup is complete, by the security manager, and by our seccomp policy and we are never going to relax that.

@beiske
Copy link
Member

beiske commented Dec 4, 2019

Thanks, is the corollary then that Elasticsearch will exit if Metricbeat exits so that both processes may be rebooted?

@jasontedor
Copy link
Member Author

@beiske That seems too harsh to me. I think that should be orchestrated externally.

@beiske
Copy link
Member

beiske commented Dec 5, 2019

@jasontedor I agree, but just asking to understand the division of responsibilities. Will the user then have to detect such a failure and handle it or will Elasticsearch bundle an init process that acts as a watchdog for both? Will that perhaps depend on the package? Linux distroes have an init process, but docker images don't unless they run multiple processes. I guess we would want a similar experience for the zip package also.

@cachedout
Copy link
Contributor

Hi @jasontedor Did you see my question about Filebeat above? :) I would also like to ask if you've considered possibly doing this bundling prior to 8.0 to ease the story for people who are ready to migrate? For example, in this issue @jakelandis mentions that we might want to do this prior to introducing a deprecation warning but I wanted to see what you think. Thanks!

@jasontedor
Copy link
Member Author

@cachedout I think that Filebeat needs to be considered separately and presents some interesting challenges. I think that we can integrate Metricbeat in before 8.0.

@jasontedor
Copy link
Member Author

@beiske I think we can expose in Elasticsearch if the Metricbeat process has died. I think the experience would be the same for all the packages.

@pugnascotia
Copy link
Contributor

I'm not clear whether it's necessary for Metricbeat, but FYI #50277 will introduce the tini init process to the Elasticsearch image to ensure correct clean-up of ML processes.

@rjernst rjernst added Team:Data Management Meta label for data/management team Team:Core/Infra Meta label for core/infra team labels May 4, 2020
@mark-vieira mark-vieira added Team:Delivery Meta label for Delivery team and removed Team:Core/Infra Meta label for core/infra team labels Nov 11, 2020
@jasontedor
Copy link
Member Author

I'm closing this since there's doubt at this time that we're going to move forward with this. We can re-open if plans resurface.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Data Management/Monitoring :Delivery/Packaging RPM and deb packaging, tar and zip archives, shell and batch scripts >feature Team:Data Management Meta label for data/management team Team:Delivery Meta label for Delivery team v8.0.0-alpha1
Projects
None yet
Development

No branches or pull requests

8 participants