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
      YAML
      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
      YAML
      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:
      YAML
      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:
    CODE
    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:

YAML
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:
YAML
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 name Unit Description Attributes Scraper
cisco.device.up Binary Device availability (1 = up, 0 = down). None system
system.cpu.utilization Percent Percentage of CPU time in use. None system
system.memory.utilization Percent Percentage of memory bytes in use. None system
system.network.errors Count The number of errors encountered. network.io.direction interfaces
system.network.interface.status Binary Interface operational status (1 = up, 0 = down). None interfaces
system.network.io Bytes The number of bytes transmitted and received. network.io.direction interfaces
system.network.packet.count Count The number of packets transmitted or received, categorized by type. network.packet.type interfaces
system.network.packet.dropped Count The number of packets dropped. network.io.direction interfaces

Attributes

The following resource attributes are available for Cisco Nexus switches.
Resource attribute name Type Description
host.ip string The IP address of the Cisco network device.
hw.type string The type of physical hardware component.
os.name string The operating system type of the Cisco device.
The following attributes are available for Cisco Nexus metrics.
Metric attribute Type Description
network.io.direction string The network IO direction. Possible values: receive, transmit.
network.packet.type string The network packet type. Possible values: multicast, broadcast.