-
Notifications
You must be signed in to change notification settings - Fork 528
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
API Key support for APM Integration when using non-Elasticsearch output #7028
Comments
@ruflin and I are discussing API Key auth as part of an evolution of the Elastic Agent architecture. It's still early days, but the idea would be for APM Server to make API Key queries via Elastic Agent. In that kind of architecture, I believe the APM Server's output is irrelevant. |
Interesting, thanks for the pointer @axw . Since logstash output is currently planned to be supported in the near future, we could scope this issue to disable changing the output type to something else than Elasticsearch, if API Key auth is enabled on a package policy and not allow enabling API Keys on an APM Integration if the logstash output is already set. Support for API Key handling when output != ES can then be added once API Key handling via Elastic Agent is supported. |
Sounds good to me. |
I like the idea that a package can define what sorts of outputs it supports. |
It would not be on a per package base though. The apm package has some features that don't support other outputs yet, so it would be conditional. |
This makes it unfortunately more complex. Now on each change it has to be checked if a feature is around and if an integration still is working for a policy. And if the output on a policy is changed, also checks need to happen. From a Fleet perspective I guess it means an integration policy will contain some meta information on output compatibility. If we go down that path we need to define the exact error behaviours in the different scenarios. |
If restrictions are not applied on a feature base, it would mean that APM Server could not support any other output than ES until Elastic Agent/Fleet Server support the features. Is it realistic that the API Key handling and the ES syncronisation required for TBS (#7025) is planned and implemented any time soon? |
Could you help understanding couple more details on this subject please?
|
Yes, any non-Elasticsearch output will have the same challenge.
The only other feature that currently needs a direct connection to Elasticsearch is TBS. Agent configuration is pushed down to APM Server via Fleet. In the past, APM Server would search Elasticsearch directly for RUM source maps; it's now using a hybrid push/pull method that only requires connection to fleet-server, and does not require access to Elasticsearch. |
Conclusion reached with @joshdover and @mostlyjason and @chrisdistasio: The issue remains open until we found a longer term solution how APM can support logstash output, while maintaining apm agent auth via API Keys. |
Define if/how APM Integration should support API Keys for auth handling between APM Agents and APM Server (
apm-server.auth.api_key.enabled: true
) when a different output than Elasticsearch is configured.As pointed out by @joshdover in #7025 (comment) the output might be changed after the apm integration was added and configured.
For now, the API Key setup could either not be supported or a yaml box for ES host configuration could be added.
See #7025 for more discussion for a similar issue.
The text was updated successfully, but these errors were encountered: