-
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
[Elastic Agent] [Meta] Gathering logs and metrics from Kubernetes without using fleet generated agent config and without central agent management via fleet #23613
Comments
Pinging @elastic/agent (Team:Agent) |
Pinging @elastic/integrations (Team:Integrations) |
@blakerouse thanks so much for writing this issue. I think this covers the K8s control plane observability for worker and master nodes very well. Does it also cover etcd observability? the pod level logs and metrics collection - what use cases does that cover? e.g. If pod runs nginx server then, are we able to collect nginx metrics and logs for it? What does the user need to do to enable that? Also if it's easier, I am happy to divide the issue into two separate ones - one for control plane observability and other for pod level observability. |
Hi @mukeshelastic ! If I'm not mistaken, Pod level observability will be covered by Dynamic Inputs and more specifically kubernetes provider (#21480), this is the former Autodiscover feature (hints not included yet). I tried to leverage this functionality at #23618 #23679 so as to dynamically collect metrics from k8s core components that are deployed as pods on master nodes. If we manage to make this use case work then we verify that we can support collecting metrics/logs from every pod dynamically, if it is covered by conditions in Agent's config since we don't support hints yet. I think we can add this as an extra/separate point in this Issue's description. In this regard, we might need to cover this in our docs soon (#21848) cc: @ph |
@ChrsMark @blakerouse make sure if you find any issues related to the implementation please add them to this meta issue so we can prioritize them. |
@blakerouse about point no1 are we sure that we want it? We don't have something like this enabled by default right now in Filebeat's manifests. |
@ChrsMark Are you talking about |
Yeap, ok then I agree it would be a good insight. Let's add it then. |
There are few different layers for K8s here - system host that runs an OS, K8s worker node, pods, containers. And getting metrics and logs for each of them is valuable. Assuming your question was about "system host", yes it will be valuable to get those logs for troubleshooting system issues that may cause problems to pods running on it. I am assuming these logs are same as what we'd get by running system integration. |
++ |
@ChrsMark +++ Please lets do it, this is super amazing. thanks for thepush on this. |
👍🏼 Back-ported to |
There is only one issue left that is under "Needs Investigation":
I don't know if hints support is required for this to be considered to be complete, but we have made great progress on this issue. |
Being that everything is fixed on this issue minus the hints supports, which has other requirements I am going to close this issue. |
Requirements
We expect Elastic Agent inside of Kubernetes in standalone mode (no connection to fleet-server, not using fleet-server to update agent config) to collect
In addition we will provide
Note:
This issue explicitly ignores Fleet Mode, once standalone mode is working and documented then Fleet Mode will be the next target.
Core Issues
filebeat
registry./usr/share/data/elastic-agent-{{ commit_short }}/run
. Because of the{{commit_short}}
being changed on every build this causes an issue with using a host mount point. [Elastic Agent] Allow separation of runtime state location and installation and executable location. #24160--system.hostfs equivalent
to Elastic Agent Add Metricbeat --system.hostfs equivalent to Elastic Agent #22915 PR: Add system.hostfs configuration option for system module #23831Logs & Metrics
/var/log/syslog',
/var/log/secure`, etc. should be collected by Elastic Agent. PR: Add system level logs for Agent on k8s #24185/proc
and/sys
.kubelet
.kube-state-metrics
.Need to be investigated
The text was updated successfully, but these errors were encountered: