GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare il software Logstash Logfile Analytics su Ubuntu 20.04

ELK è una combinazione di tre prodotti open source ElasticSearch, Logstash e Kibana. È una delle piattaforme di gestione dei registri più popolari in tutto il mondo. Elasticsearch è un motore di ricerca e analisi. Logstash è una pipeline di elaborazione dei log che trasporta i log da più origini contemporaneamente, li trasforma e quindi li invia a una "scorta" come Elasticsearch. Kibana viene utilizzato per visualizzare i dati che Logstash ha indicizzato nell'indice Elasticsearch

In questo tutorial spiegheremo come installare Logstash su Ubuntu 20.04.

Prerequisiti

  • Un server che esegue Ubuntu 20.04.
  • Sul server è configurata una password di root.

Installa le dipendenze richieste

Per installare Elasticsearch, dovrai installare Java nel tuo sistema. Puoi installare Java JDK con il seguente comando:

apt-get install openjdk-11-jdk -y

Una volta installato, verifica la versione installata di java con il seguente comando:

java -version

Dovresti vedere il seguente output:

openjdk 11.0.7 2020-04-14
OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)

Quindi, installa le altre dipendenze richieste eseguendo il comando seguente:

apt-get install nginx curl gnupg2 wget -y

Una volta installate tutte le dipendenze, puoi procedere al passaggio successivo.

Installa e configura Elasticsearch

prima di iniziare, dovrai installare Elasticsearch nel tuo sistema. Memorizza registri ed eventi da Logstash e offre la possibilità di cercare i registri in tempo reale.

Innanzitutto, aggiungi il repository elastico al tuo sistema con il seguente comando:

curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-7.x.list

Successivamente, aggiorna il repository e installa Elasticsearch con il seguente comando:

apt-get update -y
apt-get install elasticsearch -y

Una volta installato, modifica il file di configurazione predefinito di Elasticsearch:

nano /etc/elasticsearch/elasticsearch.yml

Decommenta e modificane il valore come mostrato di seguito:

network.host: localhost  

Salva e chiudi il file, quindi avvia il servizio Elasticsearch e abilitalo all'avvio all'avvio con il seguente comando:

systemctl start elasticsearch
systemctl enable elasticsearch

A questo punto, Elasticsearch è installato e in ascolto sulla porta 9200. Ora puoi verificare se Elasticsearch funziona o meno eseguendo il comando seguente:

curl -X GET "localhost:9200"

Se tutto va bene dovresti vedere il seguente output:

{
  "name" : "ubuntu2004",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "AVRzLjAbQTK-ayYQc0GaMA",
  "version" : {
    "number" : "7.8.0",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "757314695644ea9a1dc2fecd26d1a43856725e65",
    "build_date" : "2020-06-14T19:35:50.234439Z",
    "build_snapshot" : false,
    "lucene_version" : "8.5.1",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

Una volta terminato, puoi procedere al passaggio successivo.

Installa e configura Kibana

Successivamente, dovrai installare Kibana nel tuo sistema. Kibana ti consente di analizzare i dati archiviati su Elasticsearch. Puoi installarlo semplicemente eseguendo il seguente comando:

apt-get install kibana -y

Una volta installato Kibana, avvia il servizio Kibana e abilitalo all'avvio all'avvio con il seguente comando:

systemctl start kibana
systemctl enable kibana

Successivamente, dovrai creare un utente amministrativo per Kibana per accedere all'interfaccia web di Kibana. Eseguire il comando seguente per creare l'utente e la password Kibana amministrativi e salvarli nel file htpasswd.users.

echo "admin:`openssl passwd -apr1`" | tee -a /etc/nginx/htpasswd.users

Ti verrà chiesto di fornire la password come mostrato nel seguente output:

Password: 
Verifying - Password: 
admin:$apr1$8d05.YO1$E0Q8QjfNxxxPtD.unmDs7/

Quindi, crea un file di configurazione dell'host virtuale Nginx per servire Kibana:

nano /etc/nginx/sites-available/kibana

Aggiungi le seguenti righe:

server {
    listen 80;

    server_name kibana.example.com;

    auth_basic "Restricted Access";
    auth_basic_user_file /etc/nginx/htpasswd.users;

    location / {
        proxy_pass http://localhost:5601;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

Salva e chiudi il file, quindi abilita il file host virtuale Nginx con il seguente comando:

ln -s /etc/nginx/sites-available/kibana /etc/nginx/sites-enabled/

Quindi, riavvia il servizio Nginx per applicare le modifiche:

systemctl restart nginx

Quindi, apri il tuo browser web e controlla lo stato del Kibana utilizzando l'URL http://kibana.example.com/status. Ti verrà chiesto di fornire nome utente e password come mostrato di seguito:

Fornisci il tuo nome utente e password Kibana e fai clic sul pulsante Accedi. Dovresti vedere la seguente schermata:

A questo punto, la dashboard di Kibana è installata nel tuo sistema. Ora puoi procedere al passaggio successivo.

Installa e configura Logstash

Logstash viene utilizzato per l'elaborazione dei log inviati dai battiti. Puoi installarlo eseguendo il seguente comando:

apt-get install logstash -y

Una volta installato Logstash, crea un nuovo file di configurazione beat con il seguente comando:

nano /etc/logstash/conf.d/02-beats-input.conf

Aggiungi le seguenti righe:

input {
  beats {
    port => 5044
  }
}

Salva e chiudi il file, quindi crea un file di configurazione di Elasticsearch con il seguente comando:

nano /etc/logstash/conf.d/30-elasticsearch-output.conf

Aggiungi le seguenti righe:

output {
  if [@metadata][pipeline] {
    elasticsearch {
    hosts => ["localhost:9200"]
    manage_template => false
    index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"
    pipeline => "%{[@metadata][pipeline]}"
    }
  } else {
    elasticsearch {
    hosts => ["localhost:9200"]
    manage_template => false
    index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"
    }
  }
}

Salva e chiudi il file, quindi verifica la configurazione di Logstash con questo comando:

sudo -u logstash /usr/share/logstash/bin/logstash --path.settings /etc/logstash -t

Se tutto va bene, dovresti vedere il seguente output:

Config Validation Result: OK. Exiting Logstash

Quindi, avvia il servizio Logstash e abilitalo all'avvio all'avvio con il seguente comando:

systemctl start logstash
systemctl enable logstash

A questo punto, Logstash è installato nel tuo sistema. Ora puoi procedere al passaggio successivo.

Installa e configura Filebeat

Lo stack ELK utilizza Filebeat per raccogliere dati da varie fonti e trasportarli in Logstash.

Puoi installare Filebeat con il seguente comando:

apt-get install filebeat -y

Una volta installato, dovrai configurare Filebeat per la connessione a Logstash. Puoi configurarlo con il seguente comando:

nano /etc/filebeat/filebeat.yml

Commenta le seguenti righe:

#output.elasticsearch:
  # Array of hosts to connect to.
#  hosts: ["localhost:9200"]

Quindi, decommenta le seguenti righe:

output.logstash:
  # The Logstash hosts
  hosts: ["localhost:5044"]

Salvare e chiudere il file quindi abilitare il modulo di sistema con il seguente comando:

filebeat modules enable system

Per impostazione predefinita, Filebeat è configurato per utilizzare i percorsi predefiniti per il syslog e i log di autorizzazione.

Puoi caricare la pipeline di acquisizione per il modulo di sistema con il comando seguente:

filebeat setup --pipelines --modules system

Quindi, carica il modello con il seguente comando:

filebeat setup --index-management -E output.logstash.enabled=false -E 'output.elasticsearch.hosts=["localhost:9200"]'

Dovresti vedere il seguente output:

Index setup finished.

Per impostazione predefinita, Filebeat viene fornito con dashboard Kibana di esempio che consentono di visualizzare i dati Filebeat in Kibana. Quindi è necessario disabilitare l'output di Logstash e abilitare l'output di Elasticsearch. Puoi farlo con il seguente comando:

filebeat setup -E output.logstash.enabled=false -E output.elasticsearch.hosts=['localhost:9200'] -E setup.kibana.host=localhost:5601

Dovresti vedere il seguente output:

Overwriting ILM policy is disabled. Set `setup.ilm.overwrite:true` for enabling.

Index setup finished.
Loading dashboards (Kibana must be running and reachable)
Loaded dashboards
Setting up ML using setup --machine-learning is going to be removed in 8.0.0. Please use the ML app instead.
See more: https://www.elastic.co/guide/en/elastic-stack-overview/current/xpack-ml.html
Loaded machine learning job configurations
Loaded Ingest pipelines

Ora avvia il servizio Filebeat e abilitalo all'avvio all'avvio con il seguente comando:

systemctl start filebeat
systemctl enable filebeat

Accedi al dashboard di Kibana

A questo punto, tutti i componenti di ELK sono installati e configurati. Ora apri il tuo browser web e digita l'URL http://kibana.example.com. Dovresti vedere la dashboard di Kibana nella schermata seguente:

Nel riquadro di sinistra, fai clic su Scopri e seleziona il modello di indice filebeat-* predefinito per visualizzare i dati Filebeat nella schermata seguente:

Ora, Kibana offre molte funzionalità. Sentiti libero di esplorarli come desideri.

Conclusione

Congratulazioni! hai installato e configurato correttamente Logstash sul server Ubuntu 20.04. È ora possibile raccogliere e analizzare i registri di sistema da una posizione centrale. Sentiti libero di chiedermi se hai domande.


Ubuntu
  1. Come installare Graylog2 su Ubuntu 14.04

  2. Come installare Elasticsearch, Logstash e Kibana 4 su Ubuntu 14.04 / 15.04

  3. Come installare Graylog2 su Ubuntu 15.04 / 14.10

  4. Come installare Elasticsearch su Ubuntu 20.04

  5. Come installare e configurare Elasticsearch su Ubuntu 20.04

Come installare Graylog 3.0 su Ubuntu 18.04 / Ubuntu 16.04

Come installare Elasticsearch, Logstash e Kibana (ELK Stack) su Ubuntu 18.04 / Ubuntu 16.04

Come installare Thunderbird su Ubuntu 20.04

Come installare software tramite Flatpak su Ubuntu

Come installare il software Flarum Forum su Ubuntu 22.04 | 20.04

Come installare Graylog su Ubuntu 18.04 LTS