GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare Graylog2 su CentOS 7 / RHEL 7

Graylog (precedentemente noto come Graylog2) è una piattaforma di gestione dei registri open source, che consente di raccogliere, indicizzare e analizzare i registri di qualsiasi macchina in una posizione centralizzata. Questa guida ti aiuta a installare Graylog2 su CentOS 7 / RHEL 7, concentrandoti anche sull'installazione di altri quattro componenti che rendono Graylog2 uno strumento di gestione dei registri completo di potenza.

Questo tutorial è per una versione obsoleta di Graylog2. Una nuova versione è disponibile qui:Come installare Graylog su CentOS 7 / RHEL 7.

Possiamo installare Graylog in due modi,

1. Utilizzando il pacchetto sorgente.

2. Utilizzando i pacchetti binari ufficiali (consigliato).

In questo tutorial, mostrerò l'installazione di graylog usando i pacchetti binari.

Componenti:

1. MongoDB:memorizza le configurazioni e le meta informazioni.

2. Elasticsearch:memorizza i messaggi di registro e offre una funzione di ricerca, i nodi dovrebbero avere memoria elevata poiché tutte le operazioni di I/O avvengono qui.

3. GrayLog – Parser di log, raccoglie i log da vari input.

4. Interfaccia Web GrayLog =fornisce il portale basato sul Web per la gestione dei registri.

Prerequisiti:

1. Poiché Elasticsearch è basato su java, sarebbe necessario installare openJDK o Oracle JDK. Si consiglia di installare Oracle JDK.

Per utilizzare openJDK, installalo utilizzando il comando seguente.

# yum install java

Verifica la versione java utilizzando il comando seguente.

# java -version

java version "1.8.0_11"
Java(TM) SE Runtime Environment (build 1.8.0_11-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.11-b03, mixed mode)

2. Configura il repository EPEL su CentOS 7 / RHEL 7.

Installa Elasticsearch:

Elasticsearch è un server di ricerca open source, offre una ricerca e analisi distribuite in tempo reale con interfaccia web RESTful. Elasticsearch archivia tutti i log inviati dal server Graylog e visualizza i messaggi quando l'interfaccia Web graylog richiede il riempimento completo della richiesta dell'utente tramite l'interfaccia Web.

Questo argomento tratta le impostazioni di configurazione necessarie per Graylog, puoi anche dare un'occhiata a Install Elasticsearch su CentOS 7 / Ubuntu 14.10 / Linux Mint 17.1 per istruzioni dettagliate.

Installiamo Elasticsearch, puoi scaricarlo dal sito ufficiale.

Importa la chiave GPG.

# rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch

Aggiungi repository Elasticsearch.

# vi /etc/yum.repos.d/elasticsearch.repo

[elasticsearch-1.7]
name=Elasticsearch repository for 1.7.x packages
baseurl=http://packages.elastic.co/elasticsearch/1.7/centos
gpgcheck=1
gpgkey=http://packages.elastic.co/GPG-KEY-elasticsearch
enabled=1

Installa l'ultima versione usando il comando yum

# yum -y install elasticsearch

Configura Elasticseach per l'avvio durante l'avvio del sistema.

# systemctl daemon-reload
# systemctl enable elasticsearch.service

L'unica cosa importante è impostare un nome cluster come "graylog2 “, utilizzato da graylog. Ora modifica il file di configurazione di Elasticsearch.

# vi /etc/elasticsearch/elasticsearch.yml

cluster.name: graylog2

Disabilita gli script dinamici per evitare l'esecuzione remota, operazione che può essere eseguita aggiungendo la riga seguente alla fine del file precedente.

script.disable_dynamic: true

Una volta fatto, siamo a posto. Prima di ciò, riavvia i servizi Elasticsearch per caricare la configurazione modificata.

# systemctl restart elasticsearch.service

Attendi almeno un minuto per consentire il riavvio completo di Elasticsearch, altrimenti il ​​test avrà esito negativo. Elastisearch dovrebbe ora essere in ascolto su 9200 per l'elaborazione della richiesta HTTP, possiamo usare CURL per ottenere la risposta. Assicurati che venga restituito con il nome del cluster "graylog2

# curl -X GET http://localhost:9200

{
  "status" : 200,
  "name" : "Silver Fox",
  "cluster_name" : "graylog2",
  "version" : {
    "number" : "1.7.2",
    "build_hash" : "e43676b1385b8125d647f593f7202acbd816e8ec",
    "build_timestamp" : "2015-09-14T09:49:53Z",
    "build_snapshot" : false,
    "lucene_version" : "4.10.4"
  },
  "tagline" : "You Know, for Search"
}

Facoltativo: Utilizza il comando seguente per verificare lo stato del cluster Elasticsearch, devi ottenere uno stato del cluster come "verde" affinché il graylog funzioni.

# curl -XGET 'http://localhost:9200/_cluster/health?pretty=true'

{
  "cluster_name" : "graylog2",
  "status" : "green",
  "timed_out" : false,
  "number_of_nodes" : 1,
  "number_of_data_nodes" : 1,
  "active_primary_shards" : 0,
  "active_shards" : 0,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 0,
  "delayed_unassigned_shards" : 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch" : 0
}

Installa MongoDB:

MongoDB è disponibile in formato RPM e lo stesso può essere scaricato dal sito ufficiale. Aggiungi le seguenti informazioni sul repository sul sistema per installare MongoDB usando yum.

# vi /etc/yum.repos.d/mongodb-org-3.0.repo

[mongodb-org-3.0]
name=MongoDB Repository
baseurl=http://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.0/x86_64/
gpgcheck=0
enabled=1

Installa MongoDB usando il seguente comando.

# yum -y install mongodb-org

Se usi SELinux, devi installare il pacchetto sottostante per configurare alcuni elementi della politica di SELinux.

# yum -y install policycoreutils-python

Eseguire il comando seguente per configurare SELinux per consentire l'avvio di MongoDB.

# semanage port -a -t mongod_port_t -p tcp 27017

Oppure, se non desideri utilizzare SELinux sul sistema, considera la disabilitazione di SELinux.

Avvia il servizio MongoDB e abilitalo all'avvio automatico durante l'avvio del sistema.

# service mongod start

# chkconfig mongod on

I passaggi precedenti sono sufficienti per configurare graylog2, puoi trovare la configurazione dettagliata qui.

Installa Graylog2:

Graylog-server accetta ed elabora i messaggi di registro, genera anche la RESTAPI per le richieste che provengono da graylog-web-interface. Scarica l'ultima versione di graylog da graylog.org.

Utilizzare il comando seguente per installare il repository graylog2.

# rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-1.2-repository-el7_latest.rpm

Installa il server graylog più recente.

# yum -y install graylog-server

Modifica il file server.conf.

# vi /etc/graylog/server/server.conf

Configura le seguenti variabili nel file sopra.

Imposta un segreto per proteggere le password degli utenti, utilizza il comando seguente per generare un segreto, utilizza almeno 64 caratteri.

# pwgen -N 1 -s 96

5uxJaeL4vgP9uKQ1VFdbS5hpAXMXLq0KDvRgARmlI7oxKWQbH9tElSSKTzxmj4PUGlHIpOkoMMwjICYZubUGc9we5tY1FjLB

Se ricevi un "pwgen:comando non trovato “, usa il comando seguente per installare pwgen.

Nota:non dimenticare di configurare il repository EPEL su CentOS 7 / RHEL 7.

# yum -y install pwgen

Metti il ​​segreto.

password_secret = 5uxJaeL4vgP9uKQ1VFdbS5hpAXMXLq0KDvRgARmlI7oxKWQbH9tElSSKTzxmj4PUGlHIpOkoMMwjICYZubUGc9we5tY1FjLB

Successivamente è impostare una password hash per l'utente root (da non confondere con l'utente di sistema, l'utente root di graylog è admin). Utilizzerai questa password per accedere all'interfaccia web, la password dell'amministratore non può essere modificata utilizzando l'interfaccia web, devi modificare questa variabile per impostarla.

Sostituisci "la tua password ” con la scelta della tua.

# echo -n yourpassword | sha256sum

e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951

Inserisci la password hash.

root_password_sha2 = e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951

È possibile configurare l'utente root (amministratore) dell'indirizzo email.

root_email = "[email protected]"

Imposta il fuso orario dell'utente root (amministratore).

root_timezone = UTC

Graylog proverà a trovare automaticamente i nodi Elasticsearch, utilizza la modalità multicast per lo stesso. Ma quando si tratta di reti più grandi, si consiglia di utilizzare la modalità unicast, la più adatta per le configurazioni di produzione. Quindi aggiungi le seguenti due voci al file graylog server.conf, sostituisci indirizzo IP con nome host o indirizzo IP attivo, è possibile aggiungere più host separati da virgole.

elasticsearch_http_enabled = false
elasticsearch_discovery_zen_ping_unicast_hosts = ipaddress:9300

Imposta un solo nodo master definendo la variabile sottostante, l'impostazione predefinita è true, devi impostarla come false per rendere il nodo particolare come slave. Il nodo master esegue alcune attività periodiche che lo slave non eseguirà.

is_master = true

La seguente variabile imposta il numero di messaggi di log da conservare per indice, si consiglia di avere diversi indici più piccoli invece di quelli più grandi.

elasticsearch_max_docs_per_index = 20000000

Il parametro seguente definisce di avere il numero totale di indici, se questo numero viene raggiunto, il vecchio indice verrà eliminato.

elasticsearch_max_number_of_indices = 20

L'impostazione degli shard dipende in realtà dal numero di nodi nel cluster Elasticsearch, se hai un solo nodo, impostalo come 1.

elasticsearch_shards = 1

Il numero di repliche per i tuoi indici, se hai un solo nodo nel cluster Elasticsearch; impostalo come 0.

elasticsearch_replicas = 0

Aggiungi le informazioni di autenticazione MongoDB.

mongodb_useauth = false

Avvia il server graylog usando il seguente comando.

# systemctl restart graylog-server

Puoi controllare i log di avvio del server, ti sarà utile per risolvere il graylog in caso di problemi.

# tailf /var/log/graylog-server/server.log

All'avvio corretto di graylog-server, dovresti ricevere il seguente messaggio nel file di registro.

2015-09-16T21:26:05.689-04:00 INFO  [ServerBootstrap] Graylog server up and running.

Installa l'interfaccia web di Graylog:

Per configurare graylog-web-interface, devi avere almeno un nodo graylog-server. Installa l'interfaccia web usando il comando sottostante.

# yum -y install graylog-web

Modifica il file di configurazione e imposta i seguenti parametri.

# vi /etc/graylog/web/web.conf

Questo è l'elenco dei nodi graylog-server, puoi aggiungere più nodi, separati da virgole.

graylog2-server.uris="http://127.0.0.1:12900/"

Imposta lo script dell'applicazione, puoi generarlo usando pwgen -N 1 -s 96.

application.secret="sNXyFf6B4Au3GqSlZwq7En86xp10JimdxxYiLtpptOejX6tIUpUE4DGRJOrcMj07wcK0wugPaapvzEzCYinEWj7BOtHXVl5Z"

Riavvia l'interfaccia gralog-web usando il seguente comando,

# systemctl restart graylog-web

Accedi all'interfaccia web di Graylog:

L'interfaccia web ascolterà sulla porta 9000, configurerà il firewall per consentire il traffico sulla porta 9000.

# firewall-cmd --permanent --zone=public --add-port=9000/tcp
# firewall-cmd --reload

Punta il tuo browser su http://ip-add-ress:9000 . Accedi con il nome utente "admin" e la password che hai configurato in root_password_sha2 su server.conf .

Una volta effettuato l'accesso, otterrai la seguente pagina di ricerca.

Questo è tutto!, hai installato correttamente Graylog2 su CentOS 7 / RHEL 7.

Questa guida è per una versione obsoleta di Graylog2. Una nuova versione è disponibile qui:Come installare Graylog su CentOS 7 / RHEL 7.
Cent OS
  1. Come installare phpMyAdmin su RHEL 8 / CentOS 8

  2. Come installare P7Zip su RHEL 8 / CentOS 8

  3. Come installare Graylog2 su CentOS 7 / RHEL 7 – Utilizzo di Source

  4. Come installare Elasticsearch su CentOS 8 / RHEL 8

  5. Come installare Elasticsearch su CentOS/RHEL 8

Come installare Maven su RHEL 8 / CentOS 8

Come installare cpan su RHEL 8 / CentOS 8

Come installare Elasticsearch su CentOS 7

Come installare Elasticsearch su CentOS 8

Come installare Graylog su CentOS 8 / RHEL 8

Come installare Graylog 3.0 su CentOS 7 / RHEL 7