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