cisco.nxos.nxos_telemetry – TELEMETRY resource module

Note

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

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
Final configuration state

Notes

Note

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

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)