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
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.listInfine, aggiorna e aggiorna l’indice dei pacchetti di Debian per applicare le modifiche.
sudo apt update
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
Dopo che l’installazione è completata, ricarica il gestore systemd eseguendo il seguente comando.
sudo systemctl daemon-reloadQuindi, avvia e abilita il servizio grafana-server utilizzando il comando qui sotto.
sudo systemctl start grafana-server
sudo systemctl enable grafana-server
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
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.

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

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

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.iniCambia 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.localQuando 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-serverInstallazione 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
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.confInserisci 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 -tSe hai la sintassi corretta di Nginx, dovresti ricevere l’output ‘test is successful - syntax is ok‘.

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 nginxNell’output seguente, dovresti vedere che il servizio Nginx è in esecuzione.

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

Ora dovresti ottenere il dashboard di amministrazione di Grafana.

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
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
Ora, crea una nuova configurazione di Prometheus /etc/prometheus/web.yml utilizzando il seguente comando dell’editor nano.
sudo nano /etc/prometheus/web.ymlAggiungi 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.oQRt2UdUXzr9eZ6ShRLe3xYbMhw8ePfvGeLuu0khO4BuSalva 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.ymlAggiungi 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.

Successivamente, esegui il seguente comando per modificare il file di servizio di prometheus.
sudo systemctl edit --full prometheusCambia l’opzione ExecStart predefinita con la seguente.
ExecStart=/usr/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --web.config.file=/etc/prometheus/web.ymlSalva 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 prometheusVerifica il servizio prometheus utilizzando il comando qui sotto.
sudo systemctl status prometheusAll’interno della sezione ExecStart, il comando è cambiato come segue.

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.

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

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.

Fai clic su Add data source per continuare.

Seleziona il database di serie temporali Prometheus.

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.

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.

Importazione del Dashboard di Monitoraggio
Fai clic sul menu + in alto a destra e seleziona Import Dashboard.

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.

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

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

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.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.