Progetto

Generale

Profilo

Actions

Grafana » Cronologia » Versione 2

« Precedente | Versione 2/4 (diff) | Successivo »
Simone Piccardi, 26-06-2018 13:23


Installare e configurare Grafana

Grafana (https://grafana.com/) è una piattaforma molto avanzata per l'analsi e la visualizzazione di dati, quelle che seguono sono le istruzioni per installarla su una Debian (da jessie in poi). Si utilizzeranno i pacchetti forniti direttamente dal progetto, che mette a disposizione un repository specifico per Debian, continuamente aggiornato. Per installare il pacchetto occorre prima aggiungere la sorgente fornita dal progetto (ad esempio in /etc/apt/sources.list.d/grafana.list) con contenuto:

deb https://packagecloud.io/grafana/stable/debian/ stretch main

(si indichi la propria versione di Debian al posto di stretch); si dovrà inoltre caricare la chiave GPG che firma il repository (per evitare gli avvisi di APT) con:

curl https://packagecloud.io/gpg.key | sudo apt-key add -

inoltre perché il download abbia successo (i pacchetti sono forniti sotto https) è necessario che sia installato il pacchetto apt-transport-https.

Una volta completati i precedenti preliminari lo si potrà installare eseguendo:

apt-get update
apt-get install grafana

Il programma viene soltanto installato, non viene avviato ne inserito nella sequenza di avvio. Inoltre Grafana creerà le sue credenziali di accesso (il default è admin/admin) al primo avvio, che deve essere eseguito esplicitamente, pertanto per poterlo utilizzare è necessario eseguire:

systemctl daemon-reload
systemctl enable grafana-server

e per per avviarlo:

systemctl start grafana-server

Se si vogliono cambiare le credenziali prima di avviarlo, occorre modificare il file di configurazione /etc/grafana/grafana.ini cambiando le righe:

# default admin user, created on startup
;admin_user = admin

# default admin password, can be changed before first start of grafana, or in profile settings 
;admin_password = admin

In questa maniera si potrà raggiungere il servizio collegandosi alla porta 3000, ma in genere conviene predisporre un reverse proxy e fare ascoltare grafana solo su localhost (il default è ovunque) per redirigere sullo stesso le connessioni usando un indirizzo pubblico gestito da un server web con gli opportuni virtual host, per questo occorre impostare:

# The ip address to bind to, empty will bind to all interfaces
http_addr = 127.0.0.1

inoltre per avere un indirizzo corretto inviato verso l'esterno si dovrà impostare la URL con cui si accede al servizio con:

# The full public facing url you use in browser, used for redirects and emails
# If you use reverse proxy and sub path specify full url (with sub path)
;root_url = http://localhost:3000
root_url = https://grafana.miosito.it

Occorre poi configurare il reverse proxy, ad esempio con Nginx si può creare un virtual host sotto /etc/nginx/sites-available/grafana con una configurazione del tipo:

upstream grafana {
        server 127.0.0.1:3000;
}
server {
   listen 443 ssl;
   server_name grafana.miosito.it;
   root /var/www/html;
   ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
   ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
   location / {
      proxy_pass http://grafana;
      client_max_body_size 20m;
      proxy_http_version 1.1;
      proxy_pass_header Server;
      proxy_set_header Host $http_host;
      proxy_redirect off;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Scheme $scheme;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
}

e per usarlo creare in link simbolico verso lo stesso su /etc/nginx/sites-enabled/grafana e riavviare Ngnix con service nginx restart.

Per avere un corretto funzionamento delle notifiche per posta elettronica (usate per inviare gli inviti agli utenti) deve essere configurata la sezione [smtp] del file di configurazione, definendo:

enabled = true
host = localhost:25
from_address = admin@grafana.miosito.it

Aggiornato da Simone Piccardi quasi 6 anni fa · 2 revisions