High CPU usages in Elastic Node
In a development setting, I have both ElasticSearch, Kibana and MetricBeat running on the same server.
The CPU resources are so high that I couldn’t remote onto the server. It is only when I shut down the Kibana Services that I can regain control of the server.
This is first observed after upgrading from 7.10.0 to 7.13.2.
Setup is configured to “Collecting Elasticsearch monitoring data with Metricbeat”. I can use the Stack Monitoring UI to see the health of all the nodes in the cluster, including Kibana.
There are no errors recorded in all the logs (Elasticsearch, Kibana, and Metricbeat). Apart from those in Kibana that failed as there are insufficient resources available that mostly resulted in “bad gateway” errors.
Workaround: The CPU usage stabilized when kibana monitorings are switch off. i.e. kibana-xpack module disabled and monitoring.enabled: false in Kibana.yml.
Seeking advices in troubleshooting the issues. Would really appreciate any helps! Thanks!
Here the breakdown of the Development Environment (on-premise)
Architecture: Cluster, 4 data nodes, 3 master nodes
Server having issues:
Data Node with Kibana (this is the initial server used to proof out Elastic before setting it up as part of a cluster)
Server: Windows Server 2016 (non-physical) 16 Gigabytes RAM, 80 Gigabytes (One of my Oliver Twist “Please Sir I want some more” moment)
Elastic Version: 7.13.2 using bundled OpenJdk 16.0, set to 8 GB in vm.options
***** Check List ******
*** ElasticSearch ***
-
xpack.monitoring.collection.enabled = true
-
xpack.monitoring.elasticsearch.collection.enabled to false
*** MetricBeat ***
On all Elasticsearch nodes
-
metricbeat modules enable elasticsearch-xpack
-
Configure elasticsearch-xpack.yml
-
Use builtin user: remote_monitoring user
-
Configuration correct: Able to see status of individual nodes in Stack Monitoring
-
metricbeat modules disable system
-
metricbeat modules enable kibana-xpack
-
Use builtin user: remote_monitoring user
-
Configuration correct: Able to see status of kibana in Stack Monitoring
*** Kibana ***
monitoring.enabled: true
monitoring.kibana.collection.enabled: false