Skip to main content
How to enable StorageGRID in your environment
La versione in lingua italiana fornita proviene da una traduzione automatica. Per eventuali incoerenze, fare riferimento alla versione in lingua inglese.

Analisi dei log StorageGRID con stack ELK

Collaboratori

Di Angela Cheng

Con la funzione di inoltro syslog di StorageGRID, è possibile configurare un server syslog esterno per raccogliere e analizzare i messaggi di registro StorageGRID. ELK (Elasticsearch, Logstash, Kibana) è diventata una delle soluzioni di analisi dei log più diffuse. Osservare la "Analisi del log StorageGRID con video ELK" per visualizzare una configurazione ELK di esempio e come può essere utilizzata per identificare e risolvere i problemi relativi alle richieste S3 non riuscite. StorageGRID 11,9 supporta l'esportazione del log di accesso agli endpoint del bilanciamento del carico nel server syslog esterno. Guarda questo "Video di YouTube" articolo per saperne di più su questa nuova funzionalità. Questo articolo fornisce file di esempio di configurazione di Logstash, query Kibana, grafici e dashboard per fornire un rapido avvio per la gestione dei log e l'analisi di StorageGRID.

Requisiti

  • StorageGRID 11.6.0.2 o superiore

  • ELK (Elasticsearch, Logstash e Kibana) 7.1x o superiore installato e in funzione

File di esempio

Assunzione

I lettori conoscono la terminologia e le operazioni di StorageGRID ed ELK.

Istruzioni

Due versioni di esempio sono fornite a causa delle differenze nei nomi definiti dai modelli grok. Ad esempio, il modello SYSLOGBASE grok nel file di configurazione di Logstash definisce i nomi dei campi in modo diverso a seconda della versione di Logstash installata.

match => {"message" => '<%{POSINT:syslog_pri}>%{SYSLOGBASE} %{GREEDYDATA:msg-details}'}

Esempio di Logstash 7.17

Esempio di Logstash 7.17

Esempio di Logstash 8.23

Esempio di Logstash 8.23

Fasi

  1. Decomprimere l'esempio fornito in base alla versione ELK installata. La cartella di esempio include due esempi di configurazione di Logstash: + sglog-2-file.conf: questo file di configurazione genera messaggi di log StorageGRID in un file su Logstash senza trasformazione dei dati. È possibile utilizzare questa opzione per confermare che Logstash riceve messaggi StorageGRID o per comprendere meglio i modelli di log di StorageGRID. + sglog-2-es.conf: questo file di configurazione trasforma i messaggi di log di StorageGRID utilizzando vari modelli e filtri. Include istruzioni drop di esempio, che consentono di eliminare i messaggi in base a modelli o filtri. L'output viene inviato a Elasticsearch per l'indicizzazione. + personalizzare il file di configurazione selezionato in base alle istruzioni contenute nel file.

  2. Verificare il file di configurazione personalizzato:

    /usr/share/logstash/bin/logstash --config.test_and_exit -f <config-file-path/file>

    Se l'ultima riga restituita è simile alla riga seguente, il file di configurazione non presenta errori di sintassi:

    [LogStash::Runner] runner - Using config.test_and_exit mode. Config Validation Result: OK. Exiting Logstash
  3. Copiare il file di configurazione personalizzato nella configurazione del server Logstash: /Etc/logstash/conf.d + se non si è abilitato config.reload.automatic in /etc/logstash/logstash.yml, riavviare il servizio Logstash. In caso contrario, attendere lo scadere dell'intervallo di ricarica della configurazione.

     grep reload /etc/logstash/logstash.yml
    # Periodically check if the configuration has changed and reload the pipeline
    config.reload.automatic: true
    config.reload.interval: 5s
  4. Controllare /var/log/logstash/logstash-plain.log e verificare che non ci siano errori durante l'avvio di Logstash con il nuovo file di configurazione.

  5. Verificare che la porta TCP sia stata avviata e in attesa. + in questo esempio, viene utilizzata la porta TCP 5000.

    netstat -ntpa | grep 5000
    tcp6       0      0 :::5000                 :::*                    LISTEN      25744/java
  6. Dalla GUI di StorageGRID Manager, configurare il server syslog esterno per l'invio dei messaggi di log a Logstash. Per ulteriori informazioni, fare riferimento alla "video dimostrativo" .

  7. È necessario configurare o disattivare il firewall sul server Logstash per consentire la connessione dei nodi StorageGRID alla porta TCP definita.

  8. Dalla GUI di Kibana, selezionare Management (Gestione) → Dev Tools (Strumenti di sviluppo). Nella pagina Console, eseguire questo comando GET per confermare la creazione di nuovi indici in Elasticsearch.

    GET /_cat/indices/*?v=true&s=index
  9. Dalla GUI di Kibana, creare un modello di indice (ELK 7.x) o una vista dati (ELK 8.x).

  10. Dalla GUI di Kibana, inserire "oggetti memorizzati" nella casella di ricerca situata in alto al centro. + nella pagina Saved Objects (oggetti salvati), selezionare Import (Importa). In Opzioni di importazione, selezionare "Richiedi azione in caso di conflitto"

    Opzioni di importazione Kibana

    Importa elk <version>-query-chart-sample.ndjson. + quando viene richiesto di risolvere il conflitto, selezionare il modello di indice o la vista dati creata al punto 8.

    Conflitto di Kibana

    Vengono importati i seguenti oggetti Kibana: + Query + * audit-msg-s3rq-orlm + * bycast log S3 messaggi correlati + * avviso livello di accesso o superiore + * evento di sicurezza non riuscito + * nginx-gw log di accesso endpoint (disponibile solo in elk8-sample-for-sg119.zip) + grafico + * S3 conteggio richieste basato su bycast.log + * Codice di stato HTTP + * tipo di controllo + tempo di risposta medio del dashboard * S3 msg del dashboard * dati di analisi del dashboard * dati del tipo di analisi del dashboard * S3.

A questo punto, è possibile eseguire l'analisi del registro StorageGRID utilizzando Kibana.