cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2475
Views
0
Helpful
4
Replies

Telemetry Subscription on MIB yangs not exporting any data

Deepak Ladha20
Level 1
Level 1

Hi Team,

 

I am using a virtual router using Cisco ISO image (c8000v-universalk9.17.05.01a) deployed on a VM. The version information on the virtual router is as below -

 

#show version

Cisco IOS XE Software, Version 17.05.01a
Cisco IOS Software [Bengaluru], Virtual XE Software (X86_64_LINUX_IOSD-UNIVERSALK9-M), Version 17.5.1a, RELEASE SOFTWARE (fc3)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2021 by Cisco Systems, Inc.
Compiled Sun 11-Apr-21 17:14 by mcpre

 

I created a few Telemetry subscriptions (on Cisco-IOS-XE-process-cpu-oper.yang, Cisco-IOS-XE-process-memory-oper.yang) following the steps from the Cisco document. It worked and telemetry data was received on the configured receiver.

Next, I created a subscription on MIB yang (CISCO-PROCESS-MIB.yang). I followed similar steps as before -

 

#enable
#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
(config)#telemetry ietf subscription 100
(config-mdt-subs)#stream yang-push
(config-mdt-subs)#filter xpath /CISCO-PROCESS-MIB:CISCO-PROCESS-MIB/cpmCPUTotalTable/cpmCPUTotalEntry/cpmCPUMemoryHCFree
(config-mdt-subs)#update-policy periodic 500
(config-mdt-subs)#encoding encode-kvgpb
(config-mdt-subs)#source-address xx.xx.xx.xx
(config-mdt-subs)#receiver ip address xx.xx.xx.xx 57000 protocol grpc-tcp
(config-mdt-subs)#end

 

The subscription is reported valid (show telemetry ietf subscription all). The receiver is reported to be connected (show telemetry ietf subs 100 receiver). But this time receiver is not receiving any data for this subscription. I tried other yang modules from the MIBS folder but again no data was received on the receiver.

 

Any idea/input on what is going wrong here?

 

Thanks,

Deepak Ladha

 

4 Replies 4

Deepak Ladha20
Level 1
Level 1

Hi All,

 

Further update - I found out that these YANG modules (under MIBS) have compilation status as FAILED. Is it the reason that the subscription created on these YANG modules is not working/exporting data to receivers?

 

@bigevilbeard

Can you please share your thoughts?

 

Thanks.

Where do you see this error, what commands or tooling is generating it ? 

jcohoe
Cisco Employee
Cisco Employee

Hi Deepak, I checked this out in my lab and have it worked as expected. Make sure you have the CLI's enabled:

 

C9300-24UX# show run | s snmp
snmp-server community public RW
snmp-server manager
netconf-yang cisco-ia snmp-community-string public

 

You can validate the GET request with NETCONF with an RPC similar to below example

 

<rpc xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="101">
  <get>
    <filter>
      <CISCO-PROCESS-MIB xmlns="urn:ietf:params:xml:ns:yang:smiv2:CISCO-PROCESS-MIB">
        <cpmCPUTotalTable>
          <cpmCPUTotalEntry>
            <cpmCPUTotalIndex/>
            <cpmCPUTotal5sec/>
          </cpmCPUTotalEntry>
        </cpmCPUTotalTable>
      </CISCO-PROCESS-MIB>
    </filter>
  </get>
</rpc>
 
 

ys1.png

 

This is the show run and some show CLI's showing the connection is correctly established:

 

 

Screen Shot 2021-10-25 at 11.59.19 AM.png

 

C9300-24UX#show run | s 121 
telemetry ietf subscription 121
 encoding encode-kvgpb
 filter xpath /CISCO-PROCESS-MIB:CISCO-PROCESS-MIB/cpmCPUTotalTable/cpmCPUTotalEntry/cpmCPUMemoryHCFree
 source-address 10.85.134.65
 stream yang-push
 update-policy periodic 2000
 receiver ip address 10.85.134.66 57500 protocol grpc-tcp
C9300-24UX#

C9300-24UX#show telemetry ietf sub 121 receiver
Telemetry subscription receivers detail:

  Subscription ID: 121
  Address: 10.85.134.66
  Port: 57500
  Protocol: grpc-tcp
  Profile:
  Connection: 48808
  State: Connected
  Explanation:


C9300-24UX#
C9300-24UX#show telemetry ietf sub 121 detail
Telemetry subscription detail:

  Subscription ID: 121
  Type: Configured
  State: Valid
  Stream: yang-push
  Filter:
    Filter type: xpath
    XPath: /CISCO-PROCESS-MIB:CISCO-PROCESS-MIB/cpmCPUTotalTable/cpmCPUTotalEntry/cpmCPUMemoryHCFree
  Update policy:
    Update Trigger: periodic
    Period: 2000
  Encoding: encode-kvgpb
  Source VRF:
  Source Address: 10.85.134.65
  Notes:

  Legacy Receivers:
    Address                                    Port     Protocol         Protocol Profile
    -----------------------------------------------------------------------------------------
    10.85.134.66                               57500    grpc-tcp

I'm using the Telegraf receive so when I review the debug log from Telegraf I see the SNMP-CPU telemetry data coming in with subscription ID 121 as configured above:

 

CISCO-PROCESS-MIB:CISCO-PROCESS-MIB/cpmCPUTotalTable/cpmCPUTotalEntry,cpmCPUTotalIndex=19,host=jcohoe-ubuntu,path=CISCO-PROCESS-MIB:CISCO-PROCESS-MIB/cpmCPUTotalTable/cpmCPUTotalEntry,source=C9300-24UX,subscription=121 cpmCPUMemoryHCFree=4132136i 1635187426476000000

 

Screen Shot 2021-10-25 at 11.57.50 AM.png

Let me know how it goes !

 

krkothan
Cisco Employee
Cisco Employee

Thanks a lot for your detailed debugging tips.   I am also facing an issue in capturing telemetry data from cube. Running telegraf and influxdb on a linux terminal.
We observed
1. that grpc tcp packets are not going out of the cube while doing packet capture on cube and hence receiver are not getting the notifications and bucket is empty.
2. output of "show telemetry ietf subscription <n> receiver" shows "Target State: Connected" confirming connectivity between telegraf and cube
3. snmp was not enabled earlier and even after adding below cfg, issue still persists
    snmp-server community public RW
    snmp-server trap link ietf
    snmp-server enable traps snmp authentication linkdown linkup
    snmp-server enable traps syslog
    snmp-server manager
    netconf-yang cisco-ia snmp-community-string public
4. netconf-yang cfg is as below
      netconf-yang
     netconf-yang feature candidate-datastore
     netconf-yang ssh ipv4 access-list name acl1_permit

5.  Below command results in "Connection refused" .
         ssh -s <username>@<ip> -p 830 netconf
Could you advice on possible reason for grpc tcp packets not being generated on the cube server.?

Thanks in advance
Krithiga