Meistern Sie die Netzwerküberwachung mit diesem umfassenden Tutorial zum Prometheus SNMP Exporter und Grafana. Erfahren Sie, wie Sie effizient Metriken von Netzwerkgeräten mit dem Prometheus SNMP Exporter sammeln und diese in umsetzbare Erkenntnisse mit beeindruckenden Grafana-Dashboards visualisieren. Entdecken Sie, wie Sie benutzerdefinierte Dashboards erstellen, häufige Probleme beheben und das volle Potenzial von Prometheus und Grafana für Ihre Netzwerküberwachungsbedürfnisse ausschöpfen.
Für geschäftliche Anfragen oder Beratungen senden Sie mir eine E-Mail an: info@distrodomain.com
Snmpwalk-Bestätigung
snmpwalk -v3 -l authPriv -u admin -a SHA -A "PWt89voowUiDcJBi9boiSM" -x AES -X "PWt89voowUiDcJBi9boiSM" 192.168.0.84
#### snmp exporter docker-compose-Datei ####
---
services:
snmp-exporter:
container_name: snmp-exporter
image: quay.io/prometheus/snmp-exporter:v0.26.0
ports:
- "9116:9116"
- "161:161/udp"
volumes:
- ./config:/etc/snmp-exporter
command: --config.file=/etc/snmp-exporter/snmp.yml
restart: unless-stopped
networks:
prometheus_frontend:
ipv4_address: 172.19.0.12
networks:
prometheus_frontend:
external: true
#### Git-Clone des snmp_exporter-Projekts ####
#### Abhängigkeiten installieren und Generator kompilieren ####
Debian-basierte Distributionen.
sudo apt-get install unzip build-essential libsnmp-dev # Debian-basierte Distros
Redhat-basierte Distributionen.
sudo yum install gcc make net-snmp net-snmp-utils net-snmp-libs net-snmp-devel golang
#### Generator kompilieren ####
make generator mibs
#### Generator-Konfigurationsänderung ####
walk:
- sysUpTime
- interfaces
- ifXTable
- sysName
- ifHCInOctets
- ifHCOutOctets
- ifInErrors
- ifOutErrors
#### Prometheus Docker-Konfiguration ####
---
services:
prometheus:
image: prom/prometheus:v2.53.0
container_name: prometheus
ports:
- "9090:9090"
volumes:
- ./prometheus:/etc/prometheus
- ./prometheus-data:/prometheus
command: "--config.file=/etc/prometheus/prometheus.yml"
restart: unless-stopped
networks:
frontend:
ipv4_address: 172.19.0.11
networks:
frontend:
driver: bridge
ipam:
config:
- subnet: 172.19.0.0/16
gateway: 172.19.0.1
#### Prometheus-Konfigurationsdatei ####
---
global:
scrape_interval: 15s
scrape_configs:
- job_name: 'snmp'
static_configs:
- targets:
- 192.168.0.84 # SNMP-Gerät.
metrics_path: /snmp
params:
auth: [public_v3]
module: [if_mib]
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: instance
- target_label: __address__
replacement: 192.168.0.153:9116 # Der echte Hostname:Port des SNMP-Exporters.
#### Grafana Docker-Konfiguration ####
---
services:
grafana:
image: grafana/grafana-oss:10.2.8
container_name: grafana
ports:
- "3000:3000"
volumes:
- ./grafana-data:/var/lib/grafana
restart: unless-stopped
networks:
prometheus_frontend:
ipv4_address: 172.19.0.13
networks:
prometheus_frontend:
external: true
#### Grafana Dashboard ####
Gesamtverkehr
sum(irate(ifHCInOctets{instance="$Device"}[$__rate_interval]) * 8)
sum(irate(ifHCOutOctets{instance="$Device"}[$__rate_interval]) * 8)
EINGANG & AUSGANG pro Schnittstelle
irate(ifHCInOctets{instance="192.168.0.84",ifIndex="2"}[$__rate_interval]) * 8
irate(ifHCOutOctets{instance="192.168.0.84",ifIndex="2"}[$__rate_interval]) * 8
Uptime
sysUpTime{instance="$Device"} * 10
Systemname
sysName{instance="$Device"}
0:00 - Was Sie benötigen
0:23 - Unifi SNMP v3
1:08 - Linux SNMP-Tools
2:43 - SNMP-Exporter Docker-Compose
4:11 - SNMP-Generator
5:49 - Generator-Konfiguration
7:11 - SNMP kompilierte Konfiguration
8:25 - Prometheus Docker-Compose
10:34 - SNMP-Exporter Containerbestätigung
11:17 - Grafana Docker-Compose
12:26 - Prometheus-Datenquelle
13:13 - Grafana SNMP-Dashboards
13:41 - Prometheus beheben
14:21 - Switch-Hostname-Panel
15:15 - Switch-Gesamtverkehrs-Panel
17:48 - Switch-Portverkehrs-Panel
19:32 - Switch-Uptime-Panel
#prometheus #snmp #snmp_exporter #netzwerküberwachung #devops