Architecture of the monitoring system
<mermaid> flowchart TB
subgraph DataPlane["Data Plane"]
IPSEC["IPSec ESP<br/>IKEv2 SA / Child SA<br/>Kernel xfrm"]
GTPU["GTP-U Tunneller<br/>S2b Data<br/>ePDG ↔ PGW"]
end
subgraph ControlPlane["Control Plane"]
IKE["IKEv2 SWu<br/>EAP-AKA' auth"]
DIAM["Diameter Client<br/>SWx/SWm/S6b"]
GTPC["GTPv2-C S2b<br/>to PGW/SMF"]
CTRL["ePDG Controller<br/>Attach/Detach FSM"]
end
subgraph Collection["Metrics Collection"]
PROMEXP["fast-epdg<br/>/metrics endpoint<br/>:9817"]
end
subgraph Storage["Storage"]
PROM["Prometheus<br/>TSDB<br/>15-day retention"]
end
subgraph Visualization["Visualization"]
GRAF["Grafana<br/>4 дашборда, 35+ панелей"]
end
subgraph Alerting["Alerting"]
AM["Alertmanager<br/>Routing / Inhibition"]
EMAIL["Email SMTP"]
SNMPGW["SNMP Trap Sender<br/>Webhook → Trap gateway"]
NMS["Внешняя NMS<br/>SNMP v2c UDP/162"]
WH["Webhooks<br/>Telegram / PagerDuty"]
end
IKE --> PROMEXP IPSEC --> PROMEXP GTPC --> PROMEXP GTPU --> PROMEXP DIAM --> PROMEXP CTRL --> PROMEXP
PROMEXP --> PROM PROM --> GRAF PROM --> AM
AM --> EMAIL AM --> SNMPGW SNMPGW --> NMS AM --> WH
</mermaid>
Four-level monitoring architecture
| Level | Component | Technology |
|---|---|---|
| Collection | Built-in /metrics endpoint fast-epdg | Prometheus text format over HTTP |
| Storage | Prometheus TSDB | Local storage, 15-day storage by default |
| Visualization | Grafana + JSON support | Autodownload 4 dashboards |
| Alerting | Alertmanager + SNMP Trap Sender | PromQL rules → webhook → SNMP v2c trap |
Was this information helpful?