Grafana » Cronologia » Versione 2
  Simone Piccardi, 26-06-2018 13:23 
  
| 1 | 1 | Simone Piccardi | h1. Installare e configurare Grafana | 
|---|---|---|---|
| 2 | |||
| 3 | 2 | Simone Piccardi | 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: | 
| 4 | 1 | Simone Piccardi | |
| 5 | <pre> | ||
| 6 | 2 | Simone Piccardi | deb https://packagecloud.io/grafana/stable/debian/ stretch main | 
| 7 | 1 | Simone Piccardi | </pre> | 
| 8 | |||
| 9 | 2 | Simone Piccardi | (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: | 
| 10 | 1 | Simone Piccardi | |
| 11 | <pre> | ||
| 12 | 2 | Simone Piccardi | curl https://packagecloud.io/gpg.key | sudo apt-key add - | 
| 13 | </pre> | ||
| 14 | |||
| 15 | inoltre perché il download abbia successo (i pacchetti sono forniti sotto https) è necessario che sia installato il pacchetto @apt-transport-https@. | ||
| 16 | |||
| 17 | Una volta completati i precedenti preliminari lo si potrà installare eseguendo: | ||
| 18 | |||
| 19 | <pre> | ||
| 20 | apt-get update | ||
| 21 | 1 | Simone Piccardi | apt-get install grafana | 
| 22 | </pre> | ||
| 23 | |||
| 24 | 2 | Simone Piccardi | 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: | 
| 25 | 1 | Simone Piccardi | |
| 26 | <pre> | ||
| 27 | systemctl daemon-reload | ||
| 28 | systemctl enable grafana-server | ||
| 29 | </pre> | ||
| 30 | |||
| 31 | 2 | Simone Piccardi | e per per avviarlo: | 
| 32 | 1 | Simone Piccardi | |
| 33 | <pre> | ||
| 34 | systemctl start grafana-server | ||
| 35 | </pre> | ||
| 36 | |||
| 37 | 2 | Simone Piccardi | Se si vogliono cambiare le credenziali prima di avviarlo, occorre modificare il file di configurazione @/etc/grafana/grafana.ini@ cambiando le righe: | 
| 38 | 1 | Simone Piccardi | |
| 39 | <pre> | ||
| 40 | # default admin user, created on startup | ||
| 41 | ;admin_user = admin | ||
| 42 | |||
| 43 | # default admin password, can be changed before first start of grafana, or in profile settings | ||
| 44 | ;admin_password = admin | ||
| 45 | </pre> | ||
| 46 | |||
| 47 | 2 | Simone Piccardi | 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: | 
| 48 | 1 | Simone Piccardi | |
| 49 | <pre> | ||
| 50 | # The ip address to bind to, empty will bind to all interfaces | ||
| 51 | http_addr = 127.0.0.1 | ||
| 52 | </pre> | ||
| 53 | |||
| 54 | inoltre per avere un indirizzo corretto inviato verso l'esterno si dovrà impostare la URL con cui si accede al servizio con: | ||
| 55 | |||
| 56 | <pre> | ||
| 57 | # The full public facing url you use in browser, used for redirects and emails | ||
| 58 | # If you use reverse proxy and sub path specify full url (with sub path) | ||
| 59 | ;root_url = http://localhost:3000 | ||
| 60 | root_url = https://grafana.miosito.it | ||
| 61 | </pre> | ||
| 62 | |||
| 63 | |||
| 64 | 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: | ||
| 65 | |||
| 66 | <pre> | ||
| 67 | upstream grafana { | ||
| 68 | server 127.0.0.1:3000; | ||
| 69 | } | ||
| 70 | server { | ||
| 71 | listen 443 ssl; | ||
| 72 | server_name grafana.miosito.it; | ||
| 73 | root /var/www/html; | ||
| 74 | ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem; | ||
| 75 | ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key; | ||
| 76 |    location / { | ||
| 77 | proxy_pass http://grafana; | ||
| 78 | client_max_body_size 20m; | ||
| 79 | proxy_http_version 1.1; | ||
| 80 | proxy_pass_header Server; | ||
| 81 | proxy_set_header Host $http_host; | ||
| 82 | proxy_redirect off; | ||
| 83 | proxy_set_header X-Real-IP $remote_addr; | ||
| 84 | proxy_set_header X-Scheme $scheme; | ||
| 85 | proxy_set_header X-Forwarded-Proto $scheme; | ||
| 86 | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; | ||
| 87 | } | ||
| 88 | } | ||
| 89 | </pre> | ||
| 90 | |||
| 91 | e per usarlo creare in link simbolico verso lo stesso su @/etc/nginx/sites-enabled/grafana@ e riavviare Ngnix con @service nginx restart@. | ||
| 92 | |||
| 93 | 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: | ||
| 94 | |||
| 95 | <pre> | ||
| 96 | enabled = true | ||
| 97 | host = localhost:25 | ||
| 98 | from_address = admin@grafana.miosito.it | ||
| 99 | </pre> |