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

Set up Elastic APM in dev #1512

Closed
2 of 4 tasks
Jose-Matsuda opened this issue Jan 23, 2023 · 5 comments
Closed
2 of 4 tasks

Set up Elastic APM in dev #1512

Jose-Matsuda opened this issue Jan 23, 2023 · 5 comments
Assignees

Comments

@Jose-Matsuda
Copy link
Contributor

Jose-Matsuda commented Jan 23, 2023

Parent issue: #1505 (comment)

Steps to set up APM: quick start via documentation

The verification of the integration of Elastic APM and OTel will be in a separate task.

@Souheil-Yazji
Copy link
Contributor

Souheil-Yazji commented Jan 23, 2023

APM Configuration

image

Agent Policy

For this part, an added step of adding the Kubernetes Integration is required. This should allows Elastic Agent to log Kubernetes system traces.
More references available here.
image

The remaining work should be covered in this guide. This should deploy a manifest with the Elastic Agent, alongside the kubernetes integration, to the cluster and to managed by fleet. The following caveats apply.

Note that the manifests provided use the kube-system namespace. Changing the namespace value might cause discoverability issues with roles/bindings.

@Souheil-Yazji
Copy link
Contributor

Souheil-Yazji commented Feb 7, 2023

@Souheil-Yazji
Copy link
Contributor

Looks like some elastic-agent rbac components are already deployed by pat's previous work, but it doesn't fully line up with the upstream manifests for the elastic-agent deployment. In particular, the Cluster Role permissions are vastly different.

@Souheil-Yazji
Copy link
Contributor

The deployment offered by the ElasticSearch docs creates an Elastic agent daemonset, which creates an elastic agent container in each namespace for metrics retrieval.

When I initially read this, I was wondering if we don't have something like this already set up for promethues. After bringing it up to @vexingly and @Jose-Matsuda, Pat brought up the point that we have fluentd set up to do a similar thing in the same manner, and whether or not that could be leverged instead of having another per-namespace cointainer running in namespaces.

I haven't done enough research on fluentd's implementation and whether it's adaptable to perform a similar task or not. I think fluentd isn't capable of adding traces to log data, but it should be possible to distribute them to Elastic which seems to be the role of the Elastic agent (not the APM agent!). If it does collect trace data, then technically this should be jerry-riggable to use fluentd instead of elastic agent.

@Souheil-Yazji
Copy link
Contributor

After talking to pat, will be puting this on hold while we explore a simpler trace mvp.

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

No branches or pull requests

2 participants