-
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
Reduce memory usage of elasticsearch/index metricset #16503
Comments
Pinging @elastic/stack-monitoring (Stack monitoring) |
@jsoriano kindly let me pick his brain on this over Zoom. Summarizing our conversation:
Thanks @jsoriano for chatting about this and validating some of my thinking! ❤️ |
@ycombinator We still encounter Metricbeat being OOMKilled. After rolling out Metricbeat 7.6.2 we experienced lower memory consumption, because we could run Metricbeat with 500Mi pod limit (before we needed much more). Now after two weeks we have more indices and shards (between 300 and 400 shards) and now we have again OOMKilled our Metricbeat running on the K8s node of the current master. |
The
elastiscearch/index
metricset (whenxpack.enabled: true
is set) consumes memory proportional to the # of indices in the ES cluster and the size of the cluster state, specifically the sizes of theGET _stats
andGET _cluster/state
responses.This is somewhat expected as the metricset needs data from those two API calls to create
type: index_stats
documents in.monitoring-es-*
indices.However, it may be possible to reduce the memory consumed by this metricset's code. Concretely, it would be worth looking into exactly which fields from the API responses are being used (and if the rest could be excluded) and also whether switching to a streaming JSON parser might help.
The text was updated successfully, but these errors were encountered: