Monitoraggio · 9 min read · Oct 09, 2025

Costruire un sistema di monitoraggio con Grafana e Prometheus su Debian 12

Grafana è una piattaforma di visualizzazione dei dati open-source e multi-piattaforma sviluppata da Grafana Labs. Grafana fornisce un’applicazione web interattiva per la visualizzazione dei dati che include grafici, diagrammi e avvisi. Con Grafana, puoi interrogare, visualizzare, impostare avvisi ed esplorare metriche, log e tracce di TSDB. È uno strumento potente che trasforma i dati del database di serie temporali (TSDB) in un grafico e una visualizzazione significativi.

In Grafana, puoi aggiungere i dati del tuo database di serie temporali tramite la ‘Data Source’. Grafana supporta più fonti di dati come Prometheus, InfluxDB, PostgreSQL, Loki, Jaeger, Graphite, Google Cloud Monitoring, AWS CloudWatch, Azure Monitor e molti altri.

In questa guida, installerai Grafana sul server Debian 12 con Nginx come reverse proxy, quindi aggiungerai Prometheus come fonte di dati e configurerai il Dashboard di Grafana per il monitoraggio del sistema.

Prerequisiti

Prima di procedere, assicurati di avere quanto segue:

  • Un server Debian 12 per l’installazione di Grafana.
  • Un server Debian 12 con Prometheus e Node Exporter installati - Come installare Prometheus e Node Exporter su Debian 12.
  • Un utente non root con privilegi di amministratore sudo.

Aggiunta del repository di Grafana

In questa guida, installerai Grafana tramite il repository ufficiale di Grafana. Per farlo, devi aggiungere il repository di Grafana al tuo server Debian.

Per iniziare, esegui il seguente comando per installare le dipendenze di base sulla tua macchina Debian.

sudo apt install gnupg2 apt-transport-https software-properties-common wget

install basic deps

Ora aggiungi la chiave GPG di Grafana e il repository eseguendo il seguente comando.

curl -fsSL https://packages.grafana.com/gpg.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/grafana.gpg  
echo 'deb [signed-by=/etc/apt/trusted.gpg.d/grafana.gpg] https://packages.grafana.com/oss/deb stable main' | sudo tee /etc/apt/sources.list.d/grafana.list

Infine, aggiorna e aggiorna l’indice dei pacchetti di Debian per applicare le modifiche.

sudo apt update

setup repo

Installazione di Grafana

Ora che hai aggiunto il repository di Grafana, installerai Grafana tramite APT. Poi, configurerai l’utente amministratore e la password per la tua installazione di Grafana.

Installa Grafana sul tuo sistema Debian utilizzando il seguente comando. Inserisci y per procedere con l’installazione.

sudo apt install grafana

install grafana

Dopo che l’installazione è completata, ricarica il gestore systemd eseguendo il seguente comando.

sudo systemctl daemon-reload

Quindi, avvia e abilita il servizio grafana-server utilizzando il comando qui sotto.

sudo systemctl start grafana-server  
sudo systemctl enable grafana-server

start enable grafana

Una volta che il grafana-server è in esecuzione, verifica utilizzando il comando qui sotto. Se tutto va bene, dovresti vedere che il grafana-server è abilitato e in esecuzione.

sudo systemctl status grafana-server

verify grafana

Infine, apri il tuo browser web e visita l’indirizzo IP del tuo server con la porta predefinita di Grafana 3000, come http://192.168.5.20:3000/.

Inserisci l’utente predefinito admin e la password admin, quindi fai clic su Login.

login grafana

Ora cambia la password dell’amministratore predefinita con una nuova password. Quindi fai clic su Submit per confermare.

change admin password

Quando il processo è completato, dovresti vedere il dashboard di Grafana come segue:

grafana dashboard

Configurazione di Grafana

Con Grafana installato, il passo successivo è configurare Grafana modificando la configurazione predefinita /etc/grafana/grafana.ini e impostare http_addr su localhost, http_port su 3000, e il dominio con un nome di dominio locale grafana.howtoforge.local.

Apri la configurazione predefinita di Grafana /etc/grafana/grafana.ini utilizzando il seguente comando dell’editor nano.

sudo nano /etc/grafana/grafana.ini

Cambia la configurazione predefinita con le seguenti righe. In questo esempio, eseguirai Grafana su localhost e con il nome di dominio locale grafana.howtoforge.local.

[server]  
# L'indirizzo IP a cui legarsi, vuoto si legherà a tutte le interfacce  
http_addr = localhost  
  
# La porta http da utilizzare  
http_port = 3000  
  
# Il nome di dominio pubblico utilizzato per accedere a grafana da un browser  
domain = grafana.howtoforge.local

Quando hai finito, salva e chiudi il file.

Ora esegui il seguente comando systemctl per riavviare il grafana-server e applicare le modifiche. Con questo, la tua installazione di Grafana è in esecuzione solo su localhost.

sudo systemctl restart grafana-server

Installazione di Nginx come Reverse Proxy

In questa guida, eseguirai Grafana con Nginx come reverse proxy. Ora, completa i seguenti compiti per installare e configurare Nginx come reverse proxy per la tua installazione di Grafana.

Esegui il seguente comando per installare il server web Nginx sulla tua macchina Debian. Inserisci y per procedere con l’installazione.

sudo apt install nginx

install nginx

Dopo che Nginx è installato, esegui il seguente comando dell’editor nano per creare un nuovo file di blocco del server /etc/nginx/sites-available/grafana.conf.

sudo nano /etc/nginx/sites-available/grafana.conf

Inserisci la seguente configurazione e assicurati di cambiare il nome di dominio all’interno del parametro server_name.

# Questo è necessario per proxyare le connessioni WebSocket di Grafana Live.  
map $http_upgrade $connection_upgrade {  
    default upgrade;  
    '' close;  
}  
  
server {  
    listen      80;  
    server_name grafana.howtoforge.local;  
  
    root /usr/share/nginx/html;  
    index index.html index.htm;  
  
    access_log /var/log/nginx/grafana-access.log;  
    error_log /var/log/nginx/grafana-error.log;  
  
    location / {  
        proxy_set_header Host $http_host;  
        proxy_pass http://localhost:3000/;  
    }  
  
    # Proxy Grafana Live WebSocket connections.  
    location /api/live {  
        rewrite  ^/(.*)  /$1 break;  
        proxy_http_version 1.1;  
        proxy_set_header Upgrade $http_upgrade;  
        proxy_set_header Connection $connection_upgrade;  
        proxy_set_header Host $http_host;  
        proxy_pass http://localhost:3000/;  
    }  
}

Salva e chiudi il file quando hai finito.

Successivamente, esegui il seguente comando per attivare il file di blocco del server /etc/nginx/sites-available/grafana.conf. Quindi, verifica la sintassi di Nginx per assicurarti di avere una sintassi corretta.

sudo ln -s /etc/nginx/sites-available/grafana.conf /etc/nginx/sites-enabled/  
sudo nginx -t

Se hai la sintassi corretta di Nginx, dovresti ricevere l’output ‘test is successful - syntax is ok‘.

setup nginx reverse proxy

Infine, esegui il seguente comando systemctl per riavviare il servizio Nginx e applicare le modifiche. Quindi, verifica Nginx per assicurarti che il servizio sia in esecuzione.

sudo systemctl restart nginx  
sudo systemctl status nginx

Nell’output seguente, dovresti vedere che il servizio Nginx è in esecuzione.

check nginx

Per accedere al tuo server Grafana, puoi modificare il file /etc/hosts sulla tua macchina locale se sei un utente Linux o MacOS. Per gli utenti Windows, modifica il file C:\Windows\System32\drivers\etc\hosts come amministratore.

Inserisci la seguente configurazione nel file.

192.168.5.15    grafana.howtoforge.local

Salva e chiudi il file quando hai finito.

Ora torna al browser web e visita il tuo nome di dominio locale per il server Grafana, come http://grafana.howtoforge.local/. Se la tua configurazione ha avuto successo, verrai reindirizzato alla pagina di accesso di Grafana.

Accedi con il tuo utente admin e la password, quindi fai clic su Login per confermare.

grafana login

Ora dovresti ottenere il dashboard di amministrazione di Grafana.

admin dashboard

Aggiunta dell’autenticazione al server Prometheus

Prima di aggiungere Prometheus a Grafana, configurerai l’autenticazione di base per Prometheus. Genererai la password di autenticazione di base con apache2-utils, quindi abiliterai basic_auth per il server Prometheus.

In questo esempio, Prometheus e Node Exporter sono installati su server diversi con indirizzo IP 192.168.5.15 e hostname prometheus.

Accedi al server Prometheus e installa il pacchetto apache2-utils tramite il comando apt qui sotto.

sudo apt install apache2-utils -y

install apache2-utils

Dopo di che, genera la nuova password per l’autenticazione di base di Prometheus. Inserisci la tua password e copia la password generata nel tuo appunto.

htpasswd -nB promadmin

generate password

Ora, crea una nuova configurazione di Prometheus /etc/prometheus/web.yml utilizzando il seguente comando dell’editor nano.

sudo nano /etc/prometheus/web.yml

Aggiungi la seguente configurazione per proteggere il dashboard di amministrazione di Prometheus con il modulo basic_auth.

# basic_auth  
basic_auth_users:  
  promadmin: $2y$05$UlvHd4An.oQRt2UdUXzr9eZ6ShRLe3xYbMhw8ePfvGeLuu0khO4Bu

Salva e chiudi il file quando hai finito.

Successivamente, apri la configurazione predefinita di Prometheus /etc/prometheus/prometheus.yml utilizzando il seguente comando dell’editor nano.

sudo nano /etc/prometheus/prometheus.yml

Aggiungi la configurazione basic_auth qui sotto all’interno del lavoro di Prometheus. Assicurati di cambiare i dettagli utente e password con i tuoi dati.

scrape_configs:  
  # Il nome del lavoro viene aggiunto come un'etichetta `job=` a qualsiasi serie temporale estratta da questa configurazione.  
  - job_name: "prometheus"  
  
    # metrics_path predefinito è '/metrics'  
    # scheme predefinito è 'http'.  
    # Aggiungi impostazioni per certificato e autenticazione  
scheme: http  
basic_auth:  
      username: 'promadmin'  
      password: 'password'

Salva e chiudi il file quando hai finito.

add basic_auth

Successivamente, esegui il seguente comando per modificare il file di servizio di prometheus.

sudo systemctl edit --full prometheus

Cambia l’opzione ExecStart predefinita con la seguente.

ExecStart=/usr/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --web.config.file=/etc/prometheus/web.yml

Salva e chiudi il file quando hai finito.

Ora, esegui il seguente comando systemctl per ricaricare il gestore systemd e applicare le modifiche. Quindi, riavvia il servizio prometheus.

sudo systemctl daemon-reload  
sudo systemctl restart prometheus

Verifica il servizio prometheus utilizzando il comando qui sotto.

sudo systemctl status prometheus

All’interno della sezione ExecStart, il comando è cambiato come segue.

check prometheus

Infine, apri il tuo browser web e visita l’indirizzo IP di Prometheus con la porta 9090 (i.e: http://192.168.10.15:9090/). Ti verrà richiesto l’autenticazione di base di Prometheus, inserisci il tuo utente admin e la password, quindi fai clic su Sign In.

login prometheus

Se la tua configurazione ha avuto successo, dovresti vedere il dashboard di Prometheus come segue.

prometheus dashboard

Integrazione di Prometheus con il Dashboard di Grafana

Dopo aver configurato l’autenticazione di base su Prometheus, puoi aggiungere Prometheus come fonte di dati al dashboard di Grafana. Ci sono due passaggi che devi completare: aggiungere Prometheus come fonte di dati e poi importare o creare un dashboard di Grafana per il monitoraggio del sistema.

Aggiunta della fonte di dati Prometheus

Torna al Dashboard di Grafana, fai clic sul menu Connections, e seleziona Data source.

connection data source

Fai clic su Add data source per continuare.

add data source

Seleziona il database di serie temporali Prometheus.

add prometheus data source

Inserisci il nome della nuova fonte di dati e l’host di Prometheus su http://192.168.5.15:9090/. All’interno della sezione Authentication, seleziona Basic Authentication e inserisci il nome utente e la password per Prometheus.

setup prometheus data source

Scorri verso il basso e fai clic su Save & test per confermare. L’output ‘Successfully queried the Prometheus API.‘ conferma che Prometheus è stato aggiunto a Grafana.

add prometheus

Importazione del Dashboard di Monitoraggio

Fai clic sul menu + in alto a destra e seleziona Import Dashboard.

import database

Trova il tuo Dashboard desiderato su https://grafana.com/grafana/dashboards/. Quindi, copia e incolla l’ID del dashboard e fai clic su Load per confermare. In questo caso, utilizzeremo l’ID del Dashboard 15172.

load dashboard

Inserisci il nome del dashboard e seleziona la fonte di dati Prometheus. Quindi fai clic su Import per confermare.

import dashboard

Di seguito è riportato un esempio del dashboard di Grafana migliorato con Prometheus per monitorare il sistema.

dashboard imported

Hai ora installato con successo Grafana su un server Debian 12 con Nginx come reverse proxy, aggiunto Prometheus come fonte di dati a Grafana e importato il dashboard di Grafana per il monitoraggio del sistema.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.