Hello, I'm starting to research Metricbeat + Kibana Inventory to monitor system resources.
The total number machine that we are planning to monitor is about 2,000.
Currently I was able to deploy metricbeat to 79 hosts and explore the metric on Kibana Inventory whithout any problem.
Next step will be expanding it to more nodes, and I want to prepare enough Elasticsearch Node for it.
Currently I've tested with on this environment.
- 5 Data Nodes (16G/16Core) + 3 Master Node(16G/16Core)
metricbeat.yml
logging.level: info
output.elasticsearch:
...
worker: 2
bulk_max_size : 1024
queue:
mem :
events: 4096
flush.min_events: 2048
max_procs : 1
setup.ilm:
enabled : auto
setup.dashboards.enabled: false
setup.template.settings:
index:
codec: best_compression
number_of_shards: 5
number_of_replicas: 1
refresh_interval: 10s
setup.kibana:
...
#------ metric beat specific configuration
metricbeat.max_start_delay: 10s
metricbeat.modules:
- module: system
metricsets:
- cpu # CPU usage
- load # CPU load averages
- memory # Memory usage
- network # Network IO
- uptime # System Uptime
- fsstat # File system summary metrics
- diskio # Disk IO
- process_summary # process 요약
enabled: true
period: 10s
processes: ['.*']
# Configure the metric types that are included by these metricsets.
cpu.metrics: ["percentages", "normalized_percentages"] # The other available options are normalized_percentages and ticks.
core.metrics: ["percentages"] # The other available option is ticks.
processors:
- add_host_metadata: