GNU/Linux >> Linux Esercitazione >  >> Debian

Come configurare lo stack ELK su Debian 10 / Debian 9

Lo stack ELK è una piattaforma di analisi dei dati completa, composta da strumenti open source Elasticsearch, Logstash e Kibana. Ti aiuta a archiviare e gestire i log centralmente e ti dà la possibilità di analizzare i problemi.

Questo articolo ti aiuta a installare lo stack ELK su Debian 10 / Debian 9.

Installa lo stack ELK

Elasticsearch – Memorizza i log in entrata da Logstash e offre la possibilità di cercare log/dati in tempo reale

Logstash:elaborazione (raccogli, arricchisci e invialo a Elasticsearch) dei log in arrivo inviati da beats (forwarder).

Kibana:fornisce la visualizzazione di eventi e registri.

Beats:installato sui computer client e invia i log a Logstash o Elasticsearch tramite il protocollo Beats.

Installa Java

Elasticsearch richiede OpenJDK o Oracle JDK disponibili sulla tua macchina. Qui, per questa demo, sto usando OpenJDK.

sudo apt aggiornamentiudo apt install -y openjdk-11-jre

Controlla la versione Java.

versione java

Risultato:

versione openjdk "11.0.7" 2020-04-14OpenJDK Runtime Environment (build 11.0.7+10-post-Debian-3deb10u1)OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Debian-3deb10u1 , modalità mista, condivisione)

Se vuoi usare OracleJDK, leggi:

LEGGI:​​Come installare Oracle Java su Debian 10 / Debian 9

Aggiungi repository elastico

Installa il supporto wget e HTTPS per apt.

sudo apt install -y wget apt-transport-https curl

I pacchetti ELK possono essere ottenuti dal repository elastico.

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

Installa e configura Elasticsearch

Per cominciare, installeremo ora il server Elasticsearch, un motore di ricerca open source basato su Lucene. Fornisce un motore di ricerca full-text distribuito in tempo reale con capacità multi-tenant con un'interfaccia Web HTTP e documenti JSON privi di schemi.

Elasticsearch archivia i dati inviati dal Logstash e li visualizza tramite Kibana su richiesta dell'utente.

Installa Elasticsearch utilizzando il comando seguente.

sudo apt aggiornamentiudo apt install -y elasticsearch-oss

Avvia il servizio Elasticsearch.

sudo systemctl avvia elasticsearchsudo systemctl abilita elasticsearch

Attendi qualche minuto ed esegui il comando seguente per vedere lo stato dell'interfaccia REST di Elasticsearch.

curl -X OTTIENI http://localhost:9200

Risultato:

{ "name" :"debian10", "cluster_name" :"elasticsearch", "cluster_uuid" :"6y4OcEnYS3qkN_AetQAYMQ", "version" :{ "number" :"7.8.0", "build_flavor" :"oss" , "build_type" :"deb", "build_hash" :"757314695644ea9a1dc2fecd26d1a43856725e65", "build_date" :"2020-06-14T19:35:50.234439Z", "build_snapshot" :false, "lucene_version" :1", " "minimum_wire_compatibility_version" :"6.8.0", "minimum_index_compatibility_version" :"6.0.0-beta1" }, "tagline" :"Sai, per la ricerca"}

L'output di cui sopra conferma che Elasticsearch è attivo e funziona correttamente.

Installa e configura Logstash

Logstash è un motore di raccolta dati e analisi dei log open source. Raccoglie i log, li analizza e li archivia su Elasticsearch per la ricerca. Sono disponibili oltre 160 plug-in per Logstash, che offre la capacità di elaborare diversi tipi di eventi senza lavoro aggiuntivo.

sudo apt install -y logstash-oss

Il file di configurazione di Logstash è composto da tre sezioni, ovvero input, filtro e output. Puoi mettere tutte e tre le sezioni in un unico file, o un file separato per ogni sezione, terminare con .conf.

Qui, utilizziamo un singolo file per posizionare le sezioni di input, filtro e output. Crea un file di configurazione nella directory /etc/logstash/conf.d/.

sudo nano /etc/logstash/conf.d/beats-syslog.conf

Nella sezione di input, configureremo Logstash in modo che sia in ascolto sulla porta 5044 per i log in entrata, dai beat (Forwarder) che si trovano sui computer client.

input { battiti { porta => 5044 ssl => false }}

Nella sezione dei filtri, utilizzeremo Grok per analizzare i log prima di inviarli a Elasticsearch, per l'archiviazione.

Il seguente filtro grok cercherà i log etichettati syslog e proverà ad analizzarli per creare un indice strutturato.

filtro {if [type] =="syslog" { grok { match => { "message" => "%{SYSLOGLINE}" } } date {match => [ "timestamp", "MMM d HH:mm :ss", "MMM gg HH:mm:ss" ]} }}

Per ulteriori modelli di filtri GROK, dai un'occhiata qui.

Nella sezione output definiremo dove archiviare i log, ovviamente Elasticsearch in caso di stack ELK.

output { elasticsearch { hosts => localhost index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}" }stdout { codec => rubydebug }}

Ora avvia e abilita il servizio Logstash.

sudo systemctl avvia logstashsudo systemctl abilita logstash

In caso di problemi, dai un'occhiata al file Logstash.

sudo cat /var/log/logstash/logstash-plain.log

Installa e configura Kibana

Kibana fornisce la visualizzazione dei dati archiviati su Elasticsearch. Installa Kibana usando il seguente comando.

sudo apt install -y kibana-oss

Per impostazione predefinita, Kibana è in ascolto su localhost, il che significa che non puoi accedere all'interfaccia web di Kibana da un'altra macchina. Modifica il file /etc/kibana/kibana.yml.

sudo nano /etc/kibana/kibana.yml

Apporta le modifiche alla riga sottostante con l'indirizzo IP del tuo server.

server.host:"192.168.0.10"

Avvia e abilita Kibana all'avvio della macchina.

sudo systemctl avvia kibanasudo systemctl abilita kibana

Installa Filebeat

Filebeat è un software che viene eseguito sulla macchina client. Invia i log al server Logstash per l'analisi o Elasticsearch per l'archiviazione dipende dalla configurazione.

Installa il supporto wget e HTTPS per apt.

sudo apt install -y wget apt-transport-https curl

I pacchetti ELK possono essere ottenuti dal repository elastico.

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

Installa Filebeat usando il seguente comando.

sudo apt aggiornamentiudo apt install -y filebeat-oss

Il file di configurazione principale di filebeat è /etc/filebeat/filebeat.yml.

sudo nano /etc/filebeat/filebeat.yml

Dobbiamo modificare questo file per inviare i log al server Logstash.

Le configurazioni seguenti inviano syslog (/var/log/syslog) al server Logstash. Per questa demo, ho commentato /var/log/*.log per evitare di inviare tutti i log al server Logstash.

. . .filebeat.inputs:# Each - è un input. La maggior parte delle opzioni può essere impostata a livello di input, quindi# puoi utilizzare input diversi per varie configurazioni.# Di seguito sono riportate le configurazioni specifiche degli input.- digita:log # Cambia in true per abilitare questa configurazione di input. abilitato:vero # Percorsi che devono essere scansionati e recuperati. Percorsi basati su glob. percorsi:- /var/log/syslog . . .

Nella sezione Output, commenta la sezione output.elasticsearch:poiché non memorizzeremo i log in Elasticsearch.

Ora vai alla riga output.logstash:e modifica le voci per inviare i log al Logstash e menziona il percorso del file SSL copiato.

Nota: Sostituisci "192.168.0.10" con l'indirizzo IP del server Logstash.

. . .#----------------------------- Output Logstash ------------------ ---------------output.logstash:# Il Logstash ospita gli host:["192.168.0.10:5044"]. . .

Riavvia il servizio Filebeat.

sudo systemctl riavvia filebeat

Accedi a Kibana

Puoi accedere all'interfaccia web di Kibana utilizzando il seguente URL.

http://il-tuo-indirizzo-ip:5601/

O

http://nome-del-servizio:5601

Al tuo primo accesso, devi mappare l'indice di filebeat. Fai clic su Esplora da solo per creare un modello di indice.

Fai clic sul Menu (icona Hamburger)>> Gestione dello stack>> Pattern di indicizzazione>> Crea modello di indice .

Digita quanto segue nella casella Modello indice e fai clic sul passaggio successivo.

filebeat-*

Seleziona @timestamp e quindi fare clic su Crea modello di indice.

@timestamp

Scorri i campi nell'indice e il loro tipo di core registrato da Elasticsearch.

Fai clic su Scopri nella barra di navigazione a sinistra per visualizzare i registri in entrata da un computer client.

Conclusione

È tutto. Spero che tu abbia imparato come installare lo stack ELK su Debian 10 / Debian 9. Condividi il tuo feedback nella sezione commenti.


Debian
  1. Come installare Elasticsearch su Debian Linux

  2. Come installare Elasticsearch su Debian 9

  3. Come installare Elasticsearch su Debian 10

  4. Come installare ELK su Ubuntu 20.04

  5. Come installare ELK Stack su RHEL 8

Come installare ELK Stack su Debian 10

Come installare Elasticsearch su Debian 11

Come installare lo stack LAMP su Debian 11

Come installare ELK Stack su CentOS 7

Come installare ELK Stack su CentOS 8

Come installare ELK Stack su Debian 8