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 | 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
ma in generale non è necessario farlo, in quanto al primo collegamento viene comunque richiesto il cambiamento della password di default.
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 è sull'indirizzo generico) per redirigere sullo stesso le connessioni usando un indirizzo pubblico gestito da un server web con gli opportuni virtual host. Per far 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 web 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; } }
poi per usarlo creare un link simbolico verso lo stesso su /etc/nginx/sites-enabled/grafana
e riavviare Ngnix con service nginx restart
.
Infine per avere un corretto funzionamento delle notifiche per posta elettronica (usate ad esempio 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
Infine potrà verificare il funzionamento del programma collegandosi all'indirizzo:
https://grafana.miosito.it
collegandosi con le credenziali di default (se non modificate preventivamente) nel qual caso, come accennato, verrà richiesta la immissione di una nuova password.
Updated by Simone Piccardi over 6 years ago · 4 revisions