In modern network engineering, monitoring WLAN interfaces with OSPF routing protocols across distributed satellite nodes presents unique challenges regarding scalability, real-time data aggregation, and stateless operation. Today, I want to share a cutting-edge solution implemented at ShitOps that harnesses the immense power of federated Apollo, NixOps, GNMI-compliant Cumulus Linux satellites, and DynamoDB to create an unprecedented network monitoring dashboard.

Problem Statement

Our enterprise WLAN is spread across multiple geographic nodes, each employing OSPF for internal routing. Ensuring real-time, accurate network metrics for OSPF states and WLAN interface statistics is crucial for performance and anomaly detection. Traditional monitoring solutions fell short in scalability, state-lifting, and dynamic configuration. We needed an architecture that allowed federated data collection, statelessness at the collector side, and a unified dashboard with aggregate and per-node visibility.

Architectural Overview

We orchestrated a stateless, federated data collection system utilizing NixOps to declaratively manage Cumulus Linux satellites, each exposing their OSPF and WLAN metrics via gNMI. Apollo Federation was employed to stitch data schemas from all satellites, enabling a federated GraphQL querying mechanism. The collected metrics are funneled into Amazon DynamoDB which powers our real-time dashboard.

Here is a high-level flowchart of the data pipeline:

flowchart TD subgraph Edge_Satellites direction LR Cumulus1[Cumulus Linux Satellite 1] --> GNMI_1[GNMI Metrics] Cumulus2[Cumulus Linux Satellite 2] --> GNMI_2[GNMI Metrics] Cumulus3[Cumulus Linux Satellite 3] --> GNMI_3[GNMI Metrics] end GNMI_1 --> Federator[Federated Apollo Gateway] GNMI_2 --> Federator GNMI_3 --> Federator Federator --> DynamoDB[DynamoDB Storage] DynamoDB --> Dashboard[Real-Time Monitoring Dashboard]

NixOps and Cumulus Linux Satellites

Each satellite is deployed and managed via NixOps, ensuring reproducibility and declarative state management. Utilizing Cumulus Linux's native gNMI interface, the satellite exports detailed OSPF adjacency tables and WLAN interface counters. NixOps configurations automate network interface initialization, OSPF daemon setup, and GNMI binding for continuous metrics availability.

Federated Apollo GraphQL Gateway

The federated Apollo Gateway collects and stitches schemas emitted by each satellite's gNMI-to-GraphQL adapter. Each satellite acts as a microservice exposing its OSPF and WLAN data as per-node GraphQL subgraph. Apollo Federation composes these into a unified schema that allows dynamic, real-time querying without stateful backends.

DynamoDB Backend and Statelessness

DynamoDB is leveraged as a highly scalable, low-latency backend storage for all incoming data streams. The system utilizes a stateless ingestion pipeline where GNMI streams are parsed by serverless functions and batched writes are performed on DynamoDB. This architecture removes any server state or session affinity, simplifying scaling and fault tolerance.

Real-Time Monitoring Dashboard

The final component is a sleek, React-based dashboard querying the Federated Apollo Gateway. Utilizing subscriptions, it offers up-to-the-second insight into the health of WLAN interfaces and OSPF topology changes across all satellites. DynamoDB triggers backend data refreshes seamlessly feeding into the unified view.

Conclusion

This solution synergizes NixOps for reproducible satellite deployments, Cumulus Linux's gNMI capabilities, federated Apollo GraphQL schema stitching, and DynamoDB's scalable storage to produce a future-proof, stateless network monitoring platform for WLAN and OSPF states. This architecture can be extended to other network protocols and interfacing systems, paving the way for fully federated, observable network infrastructures.

As we continue to push the envelope on distributed network management, this cutting-edge stack positions ShitOps at the forefront of network telemetry innovation.