Se hai mai pensato di visualizzare il traffico di rete del tuo router MikroTik in tempo reale, sei nel posto giusto! Questo tutorial ti guiderà nell’installazione di Prometheus, Grafana e SNMP Exporter su una VM/VPS Ubuntu, per monitorare e analizzare facilmente le prestazioni della tua rete. Pronti a partire? 🔧
1️⃣ Perché Monitorare il Tuo Router MikroTik?
Chiediti: Perché voglio monitorare il mio router?
Ecco alcune motivazioni:
- Tenere traccia del traffico di rete per identificare picchi o anomalie 📊
- Diagnosticare problemi e migliorare la qualità del servizio 🔧
- Analizzare l’utilizzo della larghezza di banda, ottimizzando costi e prestazioni ⚡
Sapere il tuo obiettivo ti aiuterà a configurare il tutto più efficacemente!
2️⃣ Requisiti e Preparazione dell’Ambiente
Avrai bisogno di:
- Router MikroTik con SNMP abilitato.
- Una VM o VPS con Ubuntu 22.04 o 24.04.
- RAM consigliata: 4–8 GB
- Storage: ~100 GB
- IP statico (ad es. 192.168.1.2 per la VM/VPS)
- Indirizzo IP del router (ad es. 192.168.1.1)
3️⃣ Installazione di Ubuntu e Creazione dell’Utente
Assicurati di impostare un IP statico sulla tua VM/VPS (192.168.1.2 nell’esempio) e crea un utente dedicato:
sudo adduser mikrotik
sudo adduser mikrotik sudo
su mikrotik
cd
4️⃣ Installazione di Prometheus (Versione Aggiornata)
Prometheus raccoglie metriche da router, server e servizi.
sudo apt update
wget https://github.com/prometheus/prometheus/releases/download/v3.0.1/prometheus-3.0.1.linux-amd64.tar.gz
tar -xvf prometheus-3.0.1.linux-amd64.tar.gz
sudo mkdir -p /data /etc/prometheus
cd prometheus-3.0.1.linux-amd64
sudo mv prometheus promtool /usr/local/bin/
sudo mv prometheus.yml /etc/prometheus/prometheus.yml
sudo chown -R mikrotik:mikrotik /etc/prometheus/ /data/
cd
prometheus --version
Crea il file di servizio:
sudo nano /etc/systemd/system/prometheus.service
Incolla:
[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target
StartLimitIntervalSec=500
StartLimitBurst=5
[Service]
User=mikrotik
Group=mikrotik
Type=simple
Restart=on-failure
RestartSec=5s
ExecStart=/usr/local/bin/prometheus \
--config.file=/etc/prometheus/prometheus.yml \
--storage.tsdb.path=/data \
--web.console.templates=/etc/prometheus/consoles \
--web.console.libraries=/etc/prometheus/console_libraries \
--web.listen-address=0.0.0.0:9090 \
--web.enable-lifecycle
[Install]
WantedBy=multi-user.target
Attiva e avvia Prometheus:
sudo systemctl enable prometheus
sudo systemctl start prometheus
sudo systemctl status prometheus
5️⃣ Installazione di Node Exporter (Versione Aggiornata)
Node Exporter monitora le risorse della tua VM/VPS (CPU, RAM, ecc.).
wget https://github.com/prometheus/node_exporter/releases/download/v1.8.2/node_exporter-1.8.2.linux-amd64.tar.gz
tar -xvf node_exporter-1.8.2.linux-amd64.tar.gz
sudo mv node_exporter-1.8.2.linux-amd64/node_exporter /usr/local/bin/
rm -rf node_exporter*
node_exporter --version
Crea il file di servizio:
sudo nano /etc/systemd/system/node_exporter.service
Incolla:
[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target
[Service]
User=mikrotik
Group=mikrotik
Type=simple
Restart=on-failure
RestartSec=5s
ExecStart=/usr/local/bin/node_exporter \
--collector.logind
[Install]
WantedBy=multi-user.target
Attiva e avvia Node Exporter:
sudo systemctl enable node_exporter
sudo systemctl start node_exporter
sudo systemctl status node_exporter
Aggiungi il Job di Node Exporter a Prometheus:
sudo nano /etc/prometheus/prometheus.yml
In fondo al file:
- job_name: node_export
static_configs:
- targets: ["localhost:9100"]
Verifica la configurazione e ricarica:
promtool check config /etc/prometheus/prometheus.yml
curl -X POST http://localhost:9090/-/reload
6️⃣ Installazione di Grafana
Grafana ti permette di creare dashboard interattive.
sudo apt-get install -y apt-transport-https software-properties-common
wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -
echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
sudo apt-get update
sudo apt-get -y install grafana
sudo systemctl enable grafana-server
sudo systemctl start grafana-server
sudo systemctl status grafana-server
Accedi ora a Grafana: http://192.168.1.2:3000 con utente admin e password admin.
Collega Grafana a Prometheus:
sudo nano /etc/grafana/provisioning/datasources/datasources.yaml
Incolla:
apiVersion: 1
datasources:
- name: Prometheus
type: prometheus
url: http://localhost:9090
isDefault: true
Riavvia Grafana:
sudo systemctl restart grafana-server
7️⃣ Installazione di SNMP Exporter
SNMP Exporter raccoglie metriche dal tuo Router MikroTik.
wget https://github.com/prometheus/snmp_exporter/releases/download/v0.21.0/snmp_exporter-0.21.0.linux-amd64.tar.gz
tar xzf snmp_exporter-0.21.0.linux-amd64.tar.gz
cd snmp_exporter-0.21.0.linux-amd64
sudo cp snmp_exporter /usr/local/bin/snmp_exporter
sudo cp snmp.yml /usr/local/bin/snmp.yml
cd /usr/local/bin/
Crea il servizio:
sudo nano /etc/systemd/system/snmp-exporter.service
Incolla:
[Unit]
Description=Prometheus SNMP Exporter Service
After=network.target
[Service]
Type=simple
User=mikrotik
Group=mikrotik
ExecStart=/usr/local/bin/snmp_exporter --config.file="/usr/local/bin/snmp.yml"
[Install]
WantedBy=multi-user.target
Avvia il servizio:
sudo systemctl daemon-reload
sudo service snmp-exporter start
sudo service snmp-exporter status
8️⃣ Aggiungere SNMP Exporter a Prometheus
Modifica Prometheus per includere il router (192.168.1.1 è un esempio):
sudo nano /etc/prometheus/prometheus.yml
Aggiungi in fondo:
- job_name: snmp
metrics_path: /snmp
params:
module: [mikrotik]
static_configs:
- targets:
- 192.168.1.1 # IP del tuo dispositivo MikroTik
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: instance
- target_label: __address__
replacement: localhost:9116 # SNMP Exporter URL
Verifica e riavvia Prometheus:
promtool check config /etc/prometheus/prometheus.yml
sudo service prometheus restart
sudo service prometheus status
Disabilita il firewall (per questa demo):
sudo ufw disable
9️⃣ Configurazione del Router MikroTik per SNMP
Sul tuo Router MikroTik:
snmp set enabled=yes
snmp community print
Dovresti vedere la community “public”. Assicurati di limitare l’accesso SNMP all’indirizzo della tua VM/VPS (192.168.1.2). In WinBox:
- Vai su IP > SNMP
- Tab Communities, doppio click su “public”
- Imposta “Addresses” su 192.168.1.2
🔟 Importare la Dashboard in Grafana
Accedi a Grafana: http://192.168.1.2:3000
- Clicca sull’icona Dashboards (4 quadratini)
- Seleziona Import
- Inserisci l’ID 14420
- Scegli Prometheus come datasource
- Premi Import
Ora puoi vedere la dashboard “Mikrotik monitoring”! Imposta il periodo a “Last 5 Minutes” e l’aggiornamento a “10s” per dati quasi in tempo reale.
Conclusione: Pronto a Monitorare! 🎉
Ora hai un sistema completo per monitorare il traffico del tuo router MikroTik. Puoi analizzare dati, rilevare problemi e ottimizzare la tua rete. Buon divertimento!
