Skip to content

Architecture

The gnmi-exporter automates gNMI streaming telemetry collection from network devices managed by network-operator. It watches DeviceMonitor custom resources and Device objects to continuously reconcile the desired monitoring state.

gNMI Exporter Architecture

How it works

  1. A user creates a DeviceMonitor CR specifying which devices to monitor (via label selectors) and which gNMI subscriptions to configure.
  2. The Reconciler watches both the DeviceMonitor CR and Device resources from network-operator. It reads device endpoint addresses and credentials from the Device specs.
  3. The operator creates and manages the following owned resources:
    • RBAC (ServiceAccount, Role, RoleBinding) for the gNMIc pods
    • Secret containing the generated gNMIc configuration (targets, subscriptions, outputs)
    • StatefulSet running gNMIc instances that connect to devices and stream telemetry
    • Services for gNMIc clustering and metrics exposure
    • ServiceMonitor so Prometheus can discover and scrape the metrics endpoint
  4. The gNMIc pods establish gNMI Subscribe RPCs to the network devices and expose collected telemetry as Prometheus metrics.
  5. Prometheus Operator discovers the ServiceMonitor and scrapes /metrics from the gNMIc pods, making the data available for dashboards and alerting.
EU and German government funding logos

Funded by the European Union – NextGenerationEU.

The views and opinions expressed are solely those of the author(s) and do not necessarily reflect the views of the European Union or the European Commission. Neither the European Union nor the European Commission can be held responsible for them.