Configure the Cisco OS receiver to collect Cisco Nexus metrics

Collect Cisco Nexus metrics with the Collector for Kubernetes.

Cisco AI PODs are integrated with Cisco Nexus data center switches. You can collect Cisco Nexus metrics using the Cisco OS receiver, which exports metrics from Cisco devices through an SSH connection.

To use the Cisco OS receiver to collect Cisco Nexus metrics, you must meet the following requirements.

  1. To activate the Cisco OS receiver for Cisco Nexus manually in the Collector configuration, make the following changes to your values.yaml configuration file.
    1. Add ciscoos/nexus-switch-1 to the receivers section. You can authenticate your Cisco Nexus device using your username and password, or your username and SSH key file.

      The following examples display configuration files for the two authentication methods.

      Username and password
       receivers:  
         ciscoos/nexus-switch-1:  
             collection_interval: 30s  
             initial_delay: 5s timeout: 10s 
         device: 
           device: 
            host: 
              ip: ${CISCO_SWITCH_IP} 
              port: ${CISCO_SWITCH_PORT} 
            auth: 
                username: ${CISCO_USERNAME} 
                password: ${CISCO_PASSWORD}   
          scrapers: 
            system: 
              enabled: true 
            interface: 
              enabled: true     
          metrics: 
            cisco.device.up: 
              enabled: true 
            cisco.collector.duration.seconds: 
              enabled: true 
      Username and SSH key file
      receivers: 
        ciscoos/nexus-switch-2: 
            collection_interval: 60s 
            timeout: 30s 
            device: 
              device: 
               host: 
                 ip: ${CISCO_ROUTER_IP} 
                 port: ${CISCO_SWITCH_PORT} 
              auth: 
                username: ${CISCO_USERNAME} 
                key_file: ${CISCO_SSH_KEY_PATH} 
    2. Add the ciscoosreceiver/nexus-switch-1 receiver to the metrics/cisco-ai-pods pipeline of the service section. For example:
        pipelines: 
          metrics/cisco-ai-pods: 
            exporters: 
              - signalfx 
            processors: 
              - memory_limiter 
              - batch 
              - resourcedetection 
              - resource 
            receivers:  
              - receiver_creator/cisco-ai-pods 
              - ciscoos/nexus-switch-1 
  2. Use Helm to apply the configuration changes:
    helm upgrade ucs-otel-collector \ 
    --set="clusterName=$CLUSTER_NAME" \ 
    --set="environment=$ENVIRONMENT_NAME" \ 
    --set="splunkObservability.accessToken=$SPLUNK_ACCESS_TOKEN" \ 
    --set="splunkObservability.realm=$SPLUNK_REALM" \ 
    --set="splunkPlatform.endpoint=$SPLUNK_HEC_URL" \ 
    --set="splunkPlatform.token=$SPLUNK_HEC_TOKEN" \ 
    --set="splunkPlatform.index=$SPLUNK_INDEX" \ 
    -n otel \ 
    -f ./base-otel-collector-config/values.yaml \ 
    splunk-otel-collector-chart/splunk-otel-collector 

Configuration settings

Configure scrapers

The Cisco OS receiver supports two types of scrapers, system and interfaces, which collect different metrics. For the list of metrics collected by each scraper, see Metrics.

To activate or deactivate a specific scraper for the Cisco OS receiver, update the scrapers section of the values.yaml configuration file and enable at least one metric. For example:

    scrapers: 
      system: 
        metrics: 
          cisco.device.up: 
            enabled: true 

Configure metric collection

To configure which metrics are collected by the Cisco OS receiver, update the metrics section of the values.yaml configuration file. For example:
     scrapers: 
       system: 
         metrics: 
           cisco.device.up: 
             enabled: true 
           system.cpu.utilization: 
             enabled: true 
           system.memory.utilization: 
             enabled: true 
       interfaces: 
         metrics: 
           system.network.io: 
             enabled: true 
           system.network.errors: 
             enabled: true 
           system.network.packet.dropped: 
             enabled: true 
           system.network.packet.count: 
             enabled: true 
           system.network.interface.status: 
             enabled: true 

For more information on these metrics, see Metrics.

Metrics

The following metrics are available for Cisco Nexus switches. These metrics fall under the default metric category.
Metric nameUnitDescriptionAttributesScraper
cisco.device.upBinaryDevice availability (1 = up, 0 = down).Nonesystem
system.cpu.utilizationPercentPercentage of CPU time in use.Nonesystem
system.memory.utilizationPercentPercentage of memory bytes in use.Nonesystem
system.network.errorsCountThe number of errors encountered.network.io.direction interfaces
system.network.interface.statusBinaryInterface operational status (1 = up, 0 = down).Noneinterfaces
system.network.ioBytesThe number of bytes transmitted and received.network.io.directioninterfaces
system.network.packet.countCountThe number of packets transmitted or received, categorized by type.network.packet.type interfaces
system.network.packet.droppedCountThe number of packets dropped.network.io.directioninterfaces

Attributes

The following resource attributes are available for Cisco Nexus switches.
Resource attribute nameTypeDescription
host.ipstringThe IP address of the Cisco network device.
hw.typestringThe type of physical hardware component.
os.namestringThe operating system type of the Cisco device.
The following attributes are available for Cisco Nexus metrics.
Metric attributeTypeDescription
network.io.directionstringThe network IO direction. Possible values: receive, transmit.
network.packet.typestringThe network packet type. Possible values: multicast, broadcast.