cisco.nxos.nxos_telemetry – TELEMETRY resource module

Note

This plugin is part of the cisco.nxos collection (version 2.8.2).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install cisco.nxos.

To use it in a playbook, specify: cisco.nxos.nxos_telemetry.

New in version 1.0.0: of cisco.nxos

Synopsis

  • Manages Telemetry Monitoring Service (TMS) configuration

Note

This module has a corresponding action plugin.

Parameters

Parameter Choices/Defaults Comments
config
dictionary
The provided configuration
certificate
dictionary
Certificate SSL/TLS and hostname values.
Value must be a dict defining values for keys (key and hostname).
hostname
string
Certificate hostname
key
string
Certificate key
compression
string
    Choices:
  • gzip
Destination profile compression method.
destination_groups
list / elements=raw
List of telemetry destination groups.
destination
dictionary
Group destination ipv4, port, protocol and encoding values.
Value must be a dict defining values for keys (ip, port, protocol, encoding).
encoding
string
    Choices:
  • GPB
  • JSON
Destination group encoding.
ip
string
Destination group IP address.
port
integer
Destination group port number.
protocol
string
    Choices:
  • HTTP
  • TCP
  • UDP
  • gRPC
Destination group protocol.
id
integer
Destination group identifier.
Value must be a int representing the destination group identifier.
sensor_groups
list / elements=raw
List of telemetry sensor groups.
data_source
string
    Choices:
  • NX-API
  • DME
  • YANG
Telemetry data source.
id
integer
Sensor group identifier.
Value must be a int representing the sensor group identifier.
path
dictionary
Telemetry sensor path.
Value must be a dict defining values for keys (name, depth, filter_condition, query_condition).
Mandatory Keys (name)
Optional Keys (depth, filter_condition, query_condition)
depth
string
Sensor group depth.
filter_condition
string
Sensor group filter condition.
name
string
Sensor group path name.
query_condition
string
Sensor group query condition.
source_interface
string
Destination profile source interface.
Valid value is a str representing the source interface name.
subscriptions
list / elements=raw
List of telemetry subscriptions.
destination_group
integer
Associated destination group.
id
integer
Subscription identifier.
Value must be a int representing the subscription identifier.
sensor_group
dictionary
Associated sensor group.
Value must be a dict defining values for keys (id, sample_interval).
id
integer
Associated sensor group id.
sample_interval
integer
Associated sensor group id sample interval.
vrf
string
Destination profile vrf.
Valid value is a str representing the vrf name.
state
string
    Choices:
  • merged ←
  • replaced
  • deleted
  • gathered
Final configuration state

Notes

Note

  • Supported on N9k Version 7.0(3)I7(5) and later.

  • Unsupported for Cisco MDS

Examples

# Using deleted
# This action will delete all telemetry configuration on the device

- name: Delete Telemetry Configuration
  cisco.nxos.nxos_telemetry:
    state: deleted


# Using merged
# This action will merge telemetry configuration defined in the playbook with
# telemetry configuration that is already on the device.

- name: Merge Telemetry Configuration
  cisco.nxos.nxos_telemetry:
    config:
      certificate:
        key: /bootflash/server.key
        hostname: localhost
      compression: gzip
      source_interface: Ethernet1/1
      vrf: management
      destination_groups:
      - id: 2
        destination:
          ip: 192.168.0.2
          port: 50001
          protocol: gPRC
          encoding: GPB
      - id: 55
        destination:
          ip: 192.168.0.55
          port: 60001
          protocol: gPRC
          encoding: GPB
      sensor_groups:
      - id: 1
        data_source: NX-API
        path:
          name: '"show lldp neighbors detail"'
          depth: 0
      - id: 55
        data_source: DME
        path:
          name: sys/ch
          depth: unbounded
          filter_condition: ne(eqptFt.operSt,"ok")
      subscriptions:
      - id: 5
        destination_group: 55
        sensor_group:
          id: 1
          sample_interval: 1000
      - id: 6
        destination_group: 2
        sensor_group:
          id: 55
          sample_interval: 2000
    state: merged


# Using replaced
# This action will replace telemetry configuration on the device with the
# telemetry configuration defined in the playbook.

- name: Override Telemetry Configuration
  cisco.nxos.nxos_telemetry:
    config:
      certificate:
        key: /bootflash/server.key
        hostname: localhost
      compression: gzip
      source_interface: Ethernet1/1
      vrf: management
      destination_groups:
      - id: 2
        destination:
          ip: 192.168.0.2
          port: 50001
          protocol: gPRC
          encoding: GPB
      subscriptions:
      - id: 5
        destination_group: 55
    state: replaced

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
after
dictionary
when changed
The configuration as structured data after module completion.

Sample:
The configuration returned will always be in the same format of the parameters above.
before
dictionary
always
The configuration as structured data prior to module invocation.

Sample:
The configuration returned will always be in the same format of the parameters above.
commands
list / elements=string
always
The set of commands pushed to the remote device.

Sample:
['command 1', 'command 2', 'command 3']


Authors

  • Mike Wiebe (@mikewiebe)