While a complete discussion around telemetry, formats and transports is outside the scope of this lab, this section provides some basic background information to ensure that you understand some basic formats, transports, tools and integrations.
Dial-Out telemtry or in most situations, gRPC Telemetry, is a feature that allows for the collection and transfer of real-time, streaming data from network devices to a centralized management system. This feature is built on top of the gRPC framework and makes use of gRPC's bi-directional streaming capabilities to allow for the efficient and reliable transfer of large amounts of data. The telemetry data collected can include metrics, such as network performance statistics, as well as configuration and operational state information. This data can be used to monitor the health and performance of the network, troubleshoot issues, and make real-time decisions about network configuration. Additionally, the data can be processed using machine learning algorithms to gain insights into network behavior and detect potential issues before they occur. gRPC is tightly coupled with GPB, or (Google Protocol Buffers or protobuf) is a language- and platform-neutral data serialization format developed by Google. It is used to efficiently encode structured data for a wide range of applications, including network protocols, data storage, and data exchange between different systems. GPB is a binary format, which makes it smaller and more efficient than other text-based formats like JSON or XML. GPB is designed to be extensible, allowing new fields to be added to a message without breaking existing code. GPB also provides a code generation tool that can generate data access classes in multiple programming languages, including C++, C#, Go, Java, Python, and many others. These classes provide a convenient and efficient way to encode and decode GPB data, and handle the underlying data fields. GPB is widely used in Google's internal systems and open-source projects, and it has become a popular choice for data serialization in many other systems and applications.
feature openconfig
feature telemetry
telemetry
destination-group telegraf
host 192.168.1.199 port 50001 protocol gRPC encoding GPB
use-vrf management
sensor-group dme_bgp
data-source DME
path sys/bgp/inst depth unbounded query-condition query-target=subtree&target-subtree-class=bgpDom
path sys/bgp/inst/dom-default/af-[l2vpn-evpn]
sensor-group native_route_number
data-source YANG
path Cisco-NX-OS-device:System/urib-items/table4-items/Table4-list/routeCount
path Cisco-NX-OS-device:System/u6rib-items/table6-items/Table6-list/routeCount
sensor-group native_l3_vrf
data-source YANG
path Cisco-NX-OS-device:System/inst-items/Inst-list
sensor-group dme_vlan
path sys/bd depth 2
sensor-group oc_system
data-source YANG
path openconfig-platform:system/cpus/cpu/state/total
path openconfig-platform:system/processes/process/state
sensor-group dme_alarm
data-source DME
path sys/alarms depth unbounded
sensor-group oc_platform
data-source YANG
path openconfig-platform:components/component/power-supply/state
sensor-group oc_system
data-source YANG
path openconfig-system:system/cpus/cpu/state/total/avg
path openconfig-system:system/memory/state
sensor-group oc_interface
data-source YANG
path openconfig-interfaces:interfaces/interface/state/counters
path openconfig-interfaces:interfaces/interface[name=mgmt0]/subinterfaces/subinterface[index=0]/ipv4/addresses/address
sensor-group native_mac_table
data-source YANG
path Cisco-NX-OS-device:System/mac-items/table-items/vlan-items/MacAddressEntry-list
sensor-group dme_chassis
data-source DME
path sys/ch query-condition query-target=subtree&target-subtree-class=eqptSensor,eqptPsu alias dme_ch
sensor-group dme_system_event
data-source DME
path sys
path sys/showversion
sensor-group dme_system_sample
data-source DME
path sys/procsys/syscpusummary/syscpuhistory-last60seconds
path sys/procsys/sysmem/sysmemusage
sensor-group dme_interface_event
data-source DME
path sys/intf depth unbounded query-condition query-target=subtree&target-subtree-class=ethpmPhysIf
sensor-group native_int_counters
data-source YANG
path Cisco-NX-OS-device:System/intf-items/phys-items/PhysIf-list/dbgIfIn-items
path Cisco-NX-OS-device:System/intf-items/phys-items/PhysIf-list/dbgIfOut-items
subscription 1
dst-grp telegraf
snsr-grp dme_bgp sample-interval 300000
snsr-grp native_route_number sample-interval 300000
snsr-grp native_l3_vrf sample-interval 30000
snsr-grp dme_vlan sample-interval 30000
snsr-grp oc_system sample-interval 10000
snsr-grp dme_alarm sample-interval 15000
snsr-grp oc_platform sample-interval 10000
snsr-grp oc_interface sample-interval 10000
snsr-grp native_mac_table sample-interval 30000
snsr-grp dme_chassis sample-interval 15000
snsr-grp dme_system_event sample-interval 300000
snsr-grp dme_system_sample sample-interval 10000
snsr-grp dme_interface_event sample-interval 300000
snsr-grp native_int_counters sample-interval 10000
subscription 2
dst-grp telegraf
snsr-grp native_route_number sample-interval 0
snsr-grp dme_bgp sample-interval 0
snsr-grp native_l3_vrf sample-interval 0
snsr-grp dme_vlan sample-interval 0
snsr-grp dme_system_event sample-interval 0
snsr-grp dme_interface_event sample-interval 0
Dial in telemetry gNMI (gRPC Network Management Interface) is a network management protocol developed by Google. It is based on the gRPC framework and is designed to be used for retrieving and configuring network devices, such as routers and switches. gNMI provides a number of features that make it well-suited for use in large-scale, highly dynamic networks, including support for streaming telemetry, bi-directional streaming of configuration and operational state, and support for multiple data models. gNMI is also designed to be vendor-agnostic, meaning that it can be used with devices from different vendors, and it is extensible, allowing for the addition of new capabilities as needed.
feature grpc
feature openconfig