Elastic Stack 8 : Install Metricbeat2023/08/04 |
|
Install Metricbeat that collects metrics from System or Services.
For Metricbeat details, refer to the official site. |
|
| [1] | Install Metricbeat. Configure Elasticsearch repository before it. |
|
root@dlp:~# apt -y install metricbeat
|
| [2] | Configure basic settings and start Metricbeat. |
|
root@dlp:~#
vi /etc/metricbeat/metricbeat.yml # line 67 : if use Kibana, uncomment and specify output host # if SSL is enabled on Kibana, hostname should be the same with the hostname in certs # [username] and [password] is the admin user's one # if using self-signed certificate, specify [ssl.verification_mode: none] setup.kibana: ..... host: "https://dlp.srv.world:5601" protocol: "https" username: "elastic" password: "password" ssl.enabled: true ssl.verification_mode: none # line 99 : specify output of Elasticsearch # [username] and [password] is the admin user's one # [ssl.certificate_authorities] is the cacert generated by Elasticsearch installation output.elasticsearch: # Array of hosts to connect to. hosts: ["https://dlp.srv.world:9200"] protocol: "https" username: "elastic" password: "password" ssl.certificate_authorities: "/etc/elasticsearch/certs/http_ca.crt" ..... .....
root@dlp:~#
vi /etc/metricbeat/metricbeat.reference.yml # line 61 : set items to collect data # enable and disable to comment out and uncomment
- module: system
metricsets:
- cpu # CPU usage
- load # CPU load averages
- memory # Memory usage
- network # Network IO
- process # Per process metrics
- process_summary # Process summary
- uptime # System Uptime
- socket_summary # Socket summary
#- core # Per CPU core usage
#- diskio # Disk IO
#- filesystem # File system usage for each mountpoint
#- fsstat # File system summary metrics
#- raid # Raid
#- socket # Sockets and connection info (linux only)
#- service # systemd service information
enabled: true
period: 10s
processes: ['.*']
# line 2745 : if use Kibana, uncomment and specify output host # if SSL is enabled on Kibana, uncomment ssl related lines # [username] and [password] is the admin user's one # if using self-signed certificate, specify [ssl.verification_mode: none] setup.kibana: # Kibana Host # Scheme and port can be left out and will be set to the default (http and 5601) # In case you specify and additional path, the scheme is required: http://localhost:5601/path # IPv6 addresses should always be defined as: https://[2001:db8::1]:5601 host: "https://dlp.srv.world:5601" # Optional protocol and basic auth credentials. protocol: "https" username: "elastic" password: "password" # Optional HTTP path #path: "" # Optional Kibana space ID. #space.id: "" # Use SSL settings for HTTPS. ssl.enabled: true ..... ..... # after very careful consideration. It is primarily intended as a temporary # diagnostic mechanism when attempting to resolve TLS errors; its use in # production environments is strongly discouraged. # The default value is full. ssl.verification_mode: noneroot@dlp:~# systemctl enable --now metricbeat
|
| [3] | Verify status the data has been collected normally. |
|
# index list root@dlp:~# curl -u elastic --cacert /etc/elasticsearch/certs/http_ca.crt https://127.0.0.1:9200/_cat/indices?v Enter host password for user 'elastic' health status index uuid pri rep docs.count docs.deleted store.size pri.store.size green open .internal.alerts-observability.metrics.alerts-default-000001 JG7OkJGSQoOU1unZWIpPhg 1 0 0 0 247b 247b yellow open .ds-metricbeat-8.9.0-2023.08.04-000001 _P5TRkvkRQajH-_vCoSxPg 1 1 79 0 524.3kb 524.3kb green open .internal.alerts-observability.logs.alerts-default-000001 7-mTfD30Qsm_BMQrjWf4wA 1 0 0 0 247b 247b green open .internal.alerts-observability.uptime.alerts-default-000001 5T9PMMMiRkCgUy9SIzj1Mg 1 0 0 0 247b 247b green open .fleet-file-data-agent-000001 g9lX3CKhRVOHtUIQBOYrUw 1 0 0 0 247b 247b green open .fleet-files-agent-000001 9jPGD7QJRXKygS-7h_KsRw 1 0 0 0 247b 247b green open .internal.alerts-security.alerts-default-000001 mx-yDAa7QBmOH0Hqg-ewpg 1 0 0 0 247b 247b green open .internal.alerts-observability.slo.alerts-default-000001 oD35AVTPStG-77Ot13aXJQ 1 0 0 0 247b 247b green open .internal.alerts-observability.apm.alerts-default-000001 ItO4YBEvTYqIV4EM871jDg 1 0 0 0 247b 247b yellow open test_index yW_f_CXpSU6uAqRNpHXyTw 1 1 1 0 6.4kb 6.4kb # document list on the index root@dlp:~# curl -u elastic --cacert /etc/elasticsearch/certs/http_ca.crt https://127.0.0.1:9200/.ds-metricbeat-8.9.0-2023.08.04-000001/_search?pretty
Enter host password for user 'elastic'
{
"took" : 1,
"timed_out" : false,
"_shards" : {
"total" : 1,
"successful" : 1,
"skipped" : 0,
"failed" : 0
},
"hits" : {
"total" : {
"value" : 202,
"relation" : "eq"
},
"max_score" : 1.0,
"hits" : [
{
"_index" : ".ds-metricbeat-8.9.0-2023.08.04-000001",
"_id" : "0_37vYkB_raRHX1grUKz",
"_score" : 1.0,
"_source" : {
"@timestamp" : "2023-08-04T00:38:54.153Z",
"host" : {
"containerized" : false,
"ip" : [
"10.0.0.30",
"fe80::5054:ff:fe86:408d"
],
"mac" : [
"52-54-00-86-40-8D"
],
"hostname" : "dlp.srv.world",
"architecture" : "x86_64",
"os" : {
"type" : "linux",
"platform" : "debian",
"version" : "12 (bookworm)",
"family" : "debian",
"name" : "Debian GNU/Linux",
"kernel" : "6.1.0-9-amd64",
"codename" : "bookworm"
},
"name" : "dlp.srv.world",
"id" : "43401112bd4a4907802ec262beae4c1e"
},
.....
.....
|
| [4] | If Kibana is running, it's possible to import data to sample Dashboards. |
|
root@dlp:~# metricbeat setup --dashboards Loading dashboards (Kibana must be running and reachable) Loaded dashboards |
|
|
| Sponsored Link |
|
|