User Tools

Site Tools


network_stuff:juniper:telemetry

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
network_stuff:juniper:telemetry [2023/03/14 16:31] jotasandokunetwork_stuff:juniper:telemetry [2025/07/08 18:24] (current) jotasandoku
Line 6: Line 6:
     * protobuf 'file' define what RPCs are available. Is provided by the vendor and abstracts the way to interact to the system.     * protobuf 'file' define what RPCs are available. Is provided by the vendor and abstracts the way to interact to the system.
       * We convert or compile 'protobuf' to python libraries. 'Protoc' creates a library that you can start using straight away in your code       * We convert or compile 'protobuf' to python libraries. 'Protoc' creates a library that you can start using straight away in your code
- 
  
   * The messages are binary but we can do marshaling and see the key-value pairs with 'kgbb'   * The messages are binary but we can do marshaling and see the key-value pairs with 'kgbb'
Line 14: Line 13:
  
 ---- ----
- 
 **gNMI**  **gNMI** 
 +\\
 +See this insight on prometheus-grafana-exporters and gnmi: {{ :network_stuff:juniper:monitoring_cisco_networks_with_prometheus_grafana_and_exporters_fintech_focus_.pdf |}}
   * Provides **1) Network Management and 2) Streaming telemetry**   * Provides **1) Network Management and 2) Streaming telemetry**
   * Uses HTTP/TCP so reliable compared to snmp   * Uses HTTP/TCP so reliable compared to snmp
Line 21: Line 21:
   * gRPC Network Management Interface. Is a way to interact to grpc with Standard, reduced, RPCs.   * gRPC Network Management Interface. Is a way to interact to grpc with Standard, reduced, RPCs.
   * gnmi defines Four RPCs:    * gnmi defines Four RPCs: 
-    * capabilities ("show me what you can offer"+    * ''capabilities'' ("show me what you can offer"
-    * get (like a netconf get) +    * ''get'' (like a netconf get) 
-    * set (like a netconf set, also to update and delete) +    * ''set'' (like a netconf set, also to update and delete) 
-    * subscribe ( hook to a stream )+    * ''subscribe'' ( hook to a stream )
   * Junos in particular uses the **[[https://www.juniper.net/documentation/us/en/software/junos/interfaces-telemetry/topics/concept/open-config-grpc-junos-telemetry-interface-understanding.html|JTI client]]** which includes gNMI : //Junos Telemetry Interface Client (jtimon) is an application that can be used to collect telemetry streams from a Juniper device streaming in native format over UDP, or in OpenConfig format over gRPC.//   * Junos in particular uses the **[[https://www.juniper.net/documentation/us/en/software/junos/interfaces-telemetry/topics/concept/open-config-grpc-junos-telemetry-interface-understanding.html|JTI client]]** which includes gNMI : //Junos Telemetry Interface Client (jtimon) is an application that can be used to collect telemetry streams from a Juniper device streaming in native format over UDP, or in OpenConfig format over gRPC.//
  
-\\ +**Topology ( gNMI + Telegraf plugin)**
-How to install gRPC and gNMI with junos and prometheus: +
-\\ +
-\\ +
-Topoplogy:\\ +
-Juniper-switch(junos_openconfig+network_agent) <-http/s< prometheus-server(go JTI-client\\ +
- +
-Install guides:+
  
-  * [[https://marcelwiget.blog/2017/11/28/openconfig-and-grpc-junos-telemetry-interface/comment-page-1/|OpenConfig and gRPC Junos Telemetry Interface]] +{{:network_stuff:juniper:gnmi-n-telegraf-nx-os.png?800|}}
-  * [[https://community.juniper.net/browse/blogs/blogviewer?blogkey=e37a2402-d6e2-4e6a-8884-01638414ee3e]]+
  
 ---- ----
network_stuff/juniper/telemetry.1678811474.txt.gz · Last modified: (external edit)