GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Installazione dello stack ELK su Ubuntu 14.04

Cos'è lo stack ELK?

ELK è un acronimo che sta per Elasticsearch Logstash Kibana. Ogni termine nell'abbreviazione ELK sta per un singolo software open source e tutti questi software vengono utilizzati collettivamente per l'analisi dei registri. L'analisi dei log è la scienza per dare un senso ai record generati dal computer. I registri vengono emessi da dispositivi di rete, sistemi operativi, applicazioni e tutti i tipi di dispositivi intelligenti o programmabili. Un flusso di messaggi in sequenza temporale spesso comprende un registro. I log possono essere diretti a file e archiviati su disco oppure indirizzati come flusso di rete a un raccoglitore di log.

Conosciamo brevemente le attività svolte da ciascuno dei software nello stack ELK.

Ricerca elastica: Memorizza i log e funge anche da motore di ricerca.

Archivio: Identifica i log nella rete e li invia alla ricerca elastica.

Kibana: È un software di visualizzazione dati che visualizza i dati dal database elasticsearch in modo interattivo.

Procedura di installazione

Ora che hai un'idea di base sullo stack ELK, installiamo ogni modulo o software in successione. Ma prima dobbiamo installare JAVA sul server.

Installazione JAVA

Scarica l'ultimo pacchetto JAVA o usa il comando seguente per aggiungere il pacchetto JAVA 8 al repository

sudo add-apt-repository -y ppa:webupd8team/java

Quindi aggiorna il repository usando il comando

sudo apt-get update

Utilizzare i seguenti comandi in successione per installare correttamente JAVA

echo debconf shared/accepted-oracle-license-v1-1 select true | sudo debconf-set-selections
echo debconf shared/accepted-oracle-license-v1-1 seen true | sudo debconf-set-selections
sudo apt-get -y install oracle-java8-installer

Per verificare se il pacchetto è stato installato correttamente, digita quanto segue nel terminale

java -version

Se il pacchetto è stato installato correttamente, riceverai un messaggio come questo

java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)

Installazione di Elasticsearch

Utilizza i seguenti comandi uno per uno per scaricare e installare Elasticsearch sul tuo server

wget -qO - https://packages.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
echo "deb http://packages.elastic.co/elasticsearch/2.x/debian stable main" | sudo tee -a /etc/apt/sources.list.d/elasticsearch-2.x.list
sudo apt-get update && sudo apt-get install elasticsearch

Ora esegui il comando seguente per avviare elasticsearch all'avvio

sudo update-rc.d elasticsearch defaults 95 10

Il comando darà il seguente risultato

Adding system startup for /etc/init.d/elasticsearch ...
   /etc/rc0.d/K10elasticsearch -> ../init.d/elasticsearch
   /etc/rc1.d/K10elasticsearch -> ../init.d/elasticsearch
   /etc/rc6.d/K10elasticsearch -> ../init.d/elasticsearch
   /etc/rc2.d/S95elasticsearch -> ../init.d/elasticsearch
   /etc/rc3.d/S95elasticsearch -> ../init.d/elasticsearch
   /etc/rc4.d/S95elasticsearch -> ../init.d/elasticsearch
   /etc/rc5.d/S95elasticsearch -> ../init.d/elasticsearch

Ora è il momento di avviarlo e vedere se funziona correttamente.

sudo /etc/init.d/elasticsearch start
curl 'http://localhost:9200'

Se installato ed eseguito correttamente, dovresti ricevere un risultato di testo simile al seguente

root@ELKTest:~# curl 'http://localhost:9200'
{
  "name" : "Termagaira",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "72XGxcHjSjaaXDdtmIio0g",
  "version" : {
    "number" : "2.4.3",
    "build_hash" : "d38a34e7b75af4e17ead16f156feffa432b22be3",
    "build_timestamp" : "2016-12-07T16:28:56Z",
    "build_snapshot" : false,
    "lucene_version" : "5.5.2"
  },
  "tagline" : "You Know, for Search"
}

Ora devi modificare il file di configurazione per limitare l'accesso esterno ai log di elasticsearch.

sudo vi /etc/elasticsearch/elasticsearch.yml

Ora trova la riga network.host, decommentala rimuovendo # prima della riga e sostituisci il contenuto di quella riga in localhost o 127.0.0.1 . Per questo esempio useremo localhost

network.host:  localhost

Riavvia elasticsearch

sudo service elasticsearch restart

Installazione di Logstash

L'installazione di logstash è molto simile all'installazione di Elasticsearch, così come Kibana. Utilizza i seguenti comandi per importare e installare il pacchetto logstash.

echo "deb https://packages.elastic.co/logstash/2.3/debian stable main" | sudo tee -a /etc/apt/sources.list
sudo apt-get update && sudo apt-get install logstash

Ora esegui il comando seguente per avviare logstash all'avvio.

sudo update-rc.d logstash defaults 95 10
Result:

Adding system startup for /etc/init.d/logstash ...
   /etc/rc0.d/K10logstash -> ../init.d/logstash
   /etc/rc1.d/K10logstash -> ../init.d/logstash
   /etc/rc6.d/K10logstash -> ../init.d/logstash
   /etc/rc2.d/S95logstash -> ../init.d/logstash
   /etc/rc3.d/S95logstash -> ../init.d/logstash
   /etc/rc4.d/S95logstash -> ../init.d/logstash
   /etc/rc5.d/S95logstash -> ../init.d/logstash

Finalmente avvia logstash

sudo /etc/init.d/logstash start

Installazione di Kibana

Usa i seguenti comandi in successione per importare e installare kibana

echo "deb http://packages.elastic.co/kibana/4.5/debian stable main" | sudo tee -a /etc/apt/sources.list
sudo apt-get update && sudo apt-get install kibana

Ora configura kibana per l'avvio all'avvio utilizzando

sudo update-rc.d kibana defaults 95 10
Result:

Adding system startup for /etc/init.d/kibana ...
   /etc/rc0.d/K10kibana -> ../init.d/kibana
   /etc/rc1.d/K10kibana -> ../init.d/kibana
   /etc/rc6.d/K10kibana -> ../init.d/kibana
   /etc/rc2.d/S95kibana -> ../init.d/kibana
   /etc/rc3.d/S95kibana -> ../init.d/kibana
   /etc/rc4.d/S95kibana -> ../init.d/kibana
   /etc/rc5.d/S95kibana -> ../init.d/kibana

Configura il file kibana in modo che solo tu abbia accesso all'interfaccia.

sudo vi /opt/kibana/config/kibana.yml

Nel file di configurazione di Kibana, trova la riga server.host e sostituisci "0.0.0.0" con "localhost":quindi salva ed esci dal file di configurazione.

server.host: "localhost"

Ora riavvia il servizio

sudo service kibana restart

Installazione di NGINX

Prima di poter utilizzare l'interfaccia web di Kibana, devi installare un proxy inverso. Quindi installa NGINX usando il seguente comando.

sudo apt-get install nginx apache2-utils

Eseguendo il comando seguente è necessario impostare nome utente e password per l'interfaccia web di kibana

sudo htpasswd -c /etc/nginx/htpasswd.users kibadmin

Puoi usare qualsiasi nome a tua scelta al posto di kibadmin. Apparirà un messaggio che chiede di inserire una nuova password. Inserisci la password per il tuo account kibana e completa il processo.

Ora apporta le modifiche al blocco del server predefinito di Nginx usando quanto segue

sudo vim /etc/nginx/sites-available/default

Elimina il contenuto del file e incolla il codice seguente nel file, quindi salva ed esci.

server {
        listen 80;

        server_name yourdomain;

        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;
        }
    }

Assicurati di sostituire il tuo dominio con il nome di dominio corrispondente. Quindi riavvia il server web eseguendo il comando seguente.

sudo service nginx restart

Lo stack ELK è ora installato correttamente sul server

Generazione certificato SSL

Genera certificato SSL seguendo i passaggi forniti nel link cliccando qui.

Quando hai una chiave e un certificato, inseriscili in /etc/nginx/cert.key e /etc/nginx/cert.pem e quindi crea un file /etc/nginx/sites-available/nsm con il seguente contenuto:

server {
	listen 80 default_server;
	return 301 https://$host$request_uri;
}

server {
        listen 443 ssl;
        server_name hostname; <-- edit this to match your hostname
 
        root html;
        index index.html index.htm;
 
        ssl on;
        ssl_certificate cert.pem;
        ssl_certificate_key cert.key;
	ssl_session_timeout 1d;
	ssl_session_cache shared:SSL:50m;
 
	ssl_protocols TLSv1.2;
	ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
	ssl_prefer_server_ciphers on;

	location / {
		proxy_pass http://127.0.0.1:5601;
		include proxy_params;
	}
}

Elimina il file di configurazione Nginx predefinito e abilita quello nuovo utilizzando il comando seguente, quindi riavvia il server web.

$ sudo rm /etc/nginx/sites-enabled/default && sudo ln -s /etc/nginx/sites-available/nsm /etc/nginx/sites-enabled/nsm
$ sudo /etc/init.d/nginx restart

Se tutto viene eseguito correttamente, l'infrastruttura di ricerca principale è attiva e dovrebbe essere accessibile all'indirizzo https:///


Ubuntu
  1. Come installare ELK Stack (Elasticsearch, Logstash e Kibana) su Ubuntu 18.04 / 20.04

  2. Installazione dello stack LEMP su Ubuntu 14.04

  3. Installazione dello stack LAMP su Ubuntu 14.04

  4. Installazione del driver Fglrx Ubuntu?

  5. Come installare ELK Stack su Ubuntu 16.04

Come installare ELK Stack su CentOS 8

Come installare Elasticsearch su Ubuntu 18.04 LTS

Come installare ELK Stack su Ubuntu 20.04 LTS

Come installare Elasticsearch su Ubuntu 20.04 LTS

Come installare ELK Stack su Debian 8

Come installare ELK Stack su Ubuntu 20.04