cisco.nxos.nxos_snmp_server 模块 – SNMP 服务器资源模块。

注意

此模块是 cisco.nxos 集合(版本 9.2.1)的一部分。

如果您正在使用 ansible 包,您可能已经安装了此集合。它不包含在 ansible-core 中。要检查是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install cisco.nxos

要在 playbook 中使用它,请指定:cisco.nxos.nxos_snmp_server

cisco.nxos 2.8.0 中的新功能

概要

  • 此模块管理运行 Cisco NX-OS 的设备上的 SNMP 服务器配置。

参数

参数

注释

config

字典

SNMP 服务器配置的字典

aaa_user

字典

设置 aaa 缓存的 snmp 用户存在的时间。

cache_timeout

整数

aaa 缓存用户存在的超时时间(以秒为单位)。

communities

列表 / 元素=字典

设置 community 字符串和访问权限。

group

字符串

community 所属的组。

name

别名:community

字符串

SNMP community 字符串(最大大小为 32)。

ro

布尔值

使用此 community 字符串的只读访问权限。

选项

  • false

  • true

rw

布尔值

使用此 community 字符串的读写访问权限。

选项

  • false

  • true

use_ipv4acl

字符串

指定 IPv4 ACL,指定的 ACL 名称必须是 IPv4 ACL。

MDS 交换机不支持此选项。

use_ipv6acl

字符串

指定 IPv6 ACL,之后指定的 ACL 名称必须是 IPv6 ACL。

MDS 交换机不支持此选项。

contact

字符串

修改 sysContact。

context

字典

要映射的 SNMP 上下文。

instance

字符串

协议实例的名称(最大大小为 32)。

name

字符串

SNMP 上下文的名称(最大大小为 32)。

topology

字符串

与 SNMP 上下文关联的拓扑。

vrf

字符串

与 SNMP 上下文关联的 VRF。

MDS 交换机不支持此选项。

counter

字典

配置端口计数器配置。

MDS 交换机不支持此选项。

cache

字典

端口统计缓存。

enable

布尔值

启用端口统计缓存。

选项

  • false

  • true

timeout

整数

缓存的端口统计信息存在的超时时间(以秒为单位)。

drop

字典

静默丢弃未知的 v3 用户数据包。

MDS 交换机不支持此选项。

unknown_engine_id

布尔值

未知的 v3 引擎 ID。

选项

  • false

  • true

unknown_user

布尔值

未知的 v3 用户。

选项

  • false

  • true

engine_id

字典

配置本地 SNMPv3 引擎 ID。

MDS 交换机不支持此选项。

local

字符串

本地代理的引擎 ID。

global_enforce_priv

布尔值

全局强制所有用户的隐私。

选项

  • false

  • true

hosts

列表 / 元素=字典

指定接收 SNMP 通知的主机。

在运行配置中单独出现的 SNMP 主机配置行必须添加为单独的字典。

auth

字符串

使用 SNMPv3 authNoPriv 安全级别。

community

字符串

SNMP community 字符串或 SNMPv3 用户名(最大大小为 32)。

filter_vrf

字符串

根据配置的 VRF 将通知过滤到通知主机接收器。

MDS 交换机不支持此选项。

host

字符串

SNMP 通知主机的 IPv4 或 IPv6 地址或 DNS 名称。

informs

布尔值

向此主机发送 Inform 消息。

选项

  • false

  • true

priv

字符串

使用 SNMPv3 authPriv 安全级别。

source_interface

字符串

用于向此主机发送 SNMP 通知的源接口。

traps

布尔值

向此主机发送 Traps 消息。

选项

  • false

  • true

udp_port

整数

通知主机的 UDP 端口号。

use_vrf

字符串

配置 SNMP 以使用选定的 VRF 与主机接收器通信。

MDS 交换机不支持此选项。

version

字符串

用于通知消息的 SNMP 版本。

选项

  • "1"

  • "2c"

  • "3"

location

字符串

修改 sysLocation。

mib

字典

Mib 访问参数。

community_map

字典

SNMP community。

community

字符串

SNMP community 字符串(最大大小为 32)。

context

字符串

SNMP 上下文的名称(最大大小为 32)。

packetsize

整数

最大 SNMP 数据包大小

protocol

字典

Snmp 协议操作。

enable

布尔值

启用/禁用 snmp 协议操作。

选项

  • false

  • true

source_interface

字典

用于发送 SNMP 通知的源接口。

MDS 交换机不支持此选项。

informs

字符串

需要使用此源接口的 SNMP Inform 通知。

traps

字符串

需要使用此源接口的 SNMP Trap 通知。

system_shutdown

布尔值

配置用于重新加载的 snmp-server (2)。

选项

  • false

  • true

tcp_session

字典

为通过 tcp 会话的 snmp 启用一次性身份验证。

auth

布尔值

为通过 tcp 会话的 snmp 启用一次性身份验证。

选项

  • false

  • true

enable

布尔值

启用 tcp-session。

MDS 交换机不支持此选项。

选项

  • false

  • true

traps

字典

启用 SNMP Trap

aaa

字典

AAA traps

enable

布尔值

启用 AAA traps。

选项

  • false

  • true

server_state_change

布尔值

AAA 服务器状态更改通知。

选项

  • false

  • true

bgp

字典

SNMP BGP traps。

enable

布尔值

启用 SNMP BGP traps。

选项

  • false

  • true

bridge

字典

Bridge traps。

MDS 交换机不支持此选项。

enable

布尔值

启用 bridge traps。

选项

  • false

  • true

newroot

布尔值

启用 SNMP STP Bridge MIB newroot traps。

选项

  • false

  • true

topologychange

布尔值

启用 SNMP STP Bridge MIB topologychange traps。

选项

  • false

  • true

callhome

字典

呼叫中心陷阱。

enable

布尔值

启用呼叫中心陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

event_notify

布尔值

呼叫中心外部事件通知。

选项

  • false

  • true

smtp_send_fail

布尔值

SMTP消息发送失败通知。

选项

  • false

  • true

cfs

字典

CFS陷阱。

enable

布尔值

启用cfs陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

merge_failure

布尔值

合并失败通知。

选项

  • false

  • true

state_change_notif

布尔值

状态更改通知。

选项

  • false

  • true

config

字典

配置陷阱。

ccmCLIRunningConfigChanged

布尔值

运行配置更改陷阱。

选项

  • false

  • true

enable

布尔值

启用配置陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

entity

字典

实体陷阱。

cefcMIBEnableStatusNotification

布尔值

CefcMIBEnableStatusNotification。

选项

  • false

  • true

enable

布尔值

启用实体陷阱。

选项

  • false

  • true

entity_fan_status_change

布尔值

实体风扇状态更改。

选项

  • false

  • true

entity_mib_change

布尔值

实体MIB更改。

选项

  • false

  • true

entity_module_inserted

布尔值

实体模块已插入。

选项

  • false

  • true

entity_module_removed

布尔值

实体模块已移除。

选项

  • false

  • true

entity_module_status_change

布尔值

实体模块状态更改。

选项

  • false

  • true

entity_power_out_change

布尔值

实体电源输出更改。

选项

  • false

  • true

entity_power_status_change

布尔值

实体电源状态更改。

选项

  • false

  • true

entity_sensor

布尔值

实体传感器。

选项

  • false

  • true

entity_unrecognised_module

布尔值

实体无法识别的模块。

选项

  • false

  • true

feature_control

字典

功能控制陷阱。

ciscoFeatOpStatusChange

布尔值

功能操作状态更改通知。

选项

  • false

  • true

enable

布尔值

启用功能控制陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

featureOpStatusChange

布尔值

功能操作状态更改通知。

选项

  • false

  • true

generic

字典

通用陷阱。

coldStart

布尔值

通用冷启动陷阱。

选项

  • false

  • true

enable

布尔值

启用通用陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

warmStart

布尔值

通用暖启动陷阱。

选项

  • false

  • true

license

字典

许可证陷阱。

enable

布尔值

启用许可证陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

notify_license_expiry

布尔值

许可证过期通知。

选项

  • false

  • true

notify_license_expiry_warning

布尔值

许可证过期警告通知。

选项

  • false

  • true

notify_licensefile_missing

布尔值

许可证文件丢失通知。

选项

  • false

  • true

notify_no_license_for_feature

布尔值

未安装功能许可证通知。

选项

  • false

  • true

字典

链路陷阱。

布尔值

错误禁用状态通知。

MDS 交换机不支持此选项。

选项

  • false

  • true

布尔值

思科扩展链路状态关闭通知。

选项

  • false

  • true

布尔值

思科扩展链路状态开启通知。

选项

  • false

  • true

布尔值

思科接口收发器监视器状态更改通知。

选项

  • false

  • true

布尔值

Mac地址移动陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

布尔值

延迟链路状态更改。

选项

  • false

  • true

布尔值

启用链路陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

布尔值

IETF扩展链路状态关闭通知。

选项

  • false

  • true

布尔值

IETF扩展链路状态开启通知。

选项

  • false

  • true

布尔值

IETF链路状态关闭通知。

选项

  • false

  • true

布尔值

IETF链路状态开启通知。

选项

  • false

  • true

mmode

字典

MMode陷阱。

MDS 交换机不支持此选项。

cseMaintModeChangeNotify

布尔值

维护模式更改通知。

选项

  • false

  • true

cseNormalModeChangeNotify

布尔值

正常模式更改通知。

选项

  • false

  • true

enable

布尔值

启用mmode陷阱。

选项

  • false

  • true

ospf

字典

SNMP OSPF陷阱。

enable

布尔值

启用SNMP OSPF陷阱。

选项

  • false

  • true

ospfv3

字典

SNMP OSPFv3陷阱。

enable

布尔值

启用SNMP OSPFv3陷阱。

选项

  • false

  • true

rf

字典

RF陷阱。

enable

布尔值

启用rf陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

redundancy_framework

布尔值

冗余框架(RF)Sup切换MIB。

选项

  • false

  • true

rmon

字典

RMON陷阱。

enable

布尔值

启用rmon陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

fallingAlarm

布尔值

Rmon下降警报。

选项

  • false

  • true

hcFallingAlarm

布尔值

高容量Rmon下降警报。

选项

  • false

  • true

hcRisingAlarm

布尔值

高容量Rmon上升警报。

选项

  • false

  • true

risingAlarm

布尔值

Rmon上升警报。

选项

  • false

  • true

snmp

字典

SNMP陷阱。

authentication

布尔值

SNMP身份验证陷阱。

选项

  • false

  • true

enable

布尔值

启用snmp陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

storm_control

字典

风暴控制陷阱。

cpscEventRev1

布尔值

端口风暴控制事件。

MDS 交换机不支持此选项。

选项

  • false

  • true

enable

布尔值

启用风暴控制陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

trap_rate

布尔值

每分钟的陷阱数。

选项

  • false

  • true

stpx

字典

STPX陷阱。

MDS 交换机不支持此选项。

enable

布尔值

启用stpx陷阱。

选项

  • false

  • true

inconsistency

布尔值

启用SNMP STPX MIB InconsistencyUpdate陷阱。

选项

  • false

  • true

loop_inconsistency

布尔值

启用SNMP STPX MIB LoopInconsistencyUpdate陷阱。

选项

  • false

  • true

root_inconsistency

布尔值

启用SNMP STPX MIB RootInconsistencyUpdate陷阱。

选项

  • false

  • true

syslog

字典

启用syslog陷阱。

enable

布尔值

启用syslog陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

message_generated

布尔值

消息生成通知。

选项

  • false

  • true

sysmgr

字典

Sysmgr陷阱。

cseFailSwCoreNotifyExtended

布尔值

软件核心通知。

选项

  • false

  • true

enable

布尔值

启用sysmgr陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

system

字典

系统陷阱。

clock_change_notification

布尔值

时钟更改通知陷阱。

选项

  • false

  • true

enable

布尔值

启用系统陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

upgrade

字典

升级陷阱。

enable

布尔值

启用升级陷阱。

MDS 交换机不支持此选项。

选项

  • false

  • true

upgradeJobStatusNotify

布尔值

升级作业状态通知。

选项

  • false

  • true

upgradeOpNotifyOnCompletion

布尔值

升级全局状态通知。

选项

  • false

  • true

vtp

字典

VTP陷阱。

MDS 交换机不支持此选项。

enable

布尔值

启用VTP陷阱。

选项

  • false

  • true

notifs

布尔值

启用vtpConfigRevNumberError vtpConfigDigestEnable vtpConfigRevNumberError vtpConfigDigestError vtpServerDisabled vtpVersionOneDeviceDetected vlanTrunkPortDynamicStatusChange vtpLocalModeChanged vtpVersionInUseChanged通知。

选项

  • false

  • true

vlancreate

布尔值

启用vtpVlanCreated通知。

选项

  • false

  • true

vlandelete

布尔值

启用vtpVlanDeleted通知。

选项

  • false

  • true

users

字典

定义可以访问SNMP引擎的用户。

auth

列表 / 元素=字典

SNMP用户身份验证相关设置

authentication

字典

用户的身份验证参数。

algorithm

字符串

选择身份验证的算法。

选项

  • "md5"

  • "sha"

  • "sha-256"

engine_id

字符串

用于配置通知目标用户的EngineID(用于V3通知)。

此值需要在任务中用引号引起来。

localized_key

布尔值

指定密码是否为本地化密钥格式。

选项

  • false

  • true

localizedv2_key

布尔值

指定密码是否为本地化V2密钥格式。

选项

  • false

  • true

password

字符串

用户的身份验证密码(最大大小127)。

如果此值为本地化的,则必须在任务中用引号引起来。

priv

字典

用户的加密参数。

aes_128

布尔值

使用128位AES算法进行隐私保护。

选项

  • false

  • true

privacy_password

字符串

用户的隐私密码(最大大小130)。

如果此值为本地化的,则必须在任务中用引号引起来。

group

字符串

组名(对于通知目标用户将被忽略)(最大大小28)。

user

字符串

用户名(最大大小28)。

use_acls

列表 / 元素=字典

设置要使用的IPv4和IPv6 ACL。

ipv4

字符串

指定IPv4 ACL,后面指定的ACL名称必须是IPv4 ACL。

ipv6

字符串

指定 IPv6 ACL,之后指定的 ACL 名称必须是 IPv6 ACL。

user

字符串

用户名(最大大小28)。

running_config

字符串

此选项仅在状态为 *parsed* 时使用。

此选项的值应该是通过执行命令**show running-config | section ‘^snmp-server’**从NX-OS设备收到的输出。

状态*parsed*从running_config选项读取配置,并根据资源模块的argspec将其转换为Ansible结构化数据,然后该值将返回到结果内的*parsed*键中。

state

字符串

配置应保留的状态。

对于此模块,状态replacedoverridden的行为相同。

请参阅示例以获取更多详细信息。

选项

  • "merged" ← (默认)

  • "replaced"

  • "overridden"

  • "deleted"

  • "parsed"

  • "gathered"

  • "rendered"

注释

注意

  • 在Cisco Nexus交换机上针对NX-OS 9.3.6进行了测试。

  • 此模块适用于连接network_clihttpapi

  • 已使用连接network_cli针对Cisco MDS NX-OS 9.2(2)进行了测试。

示例

# Using merged

# Before state:
# -------------
# nxos-9k-rdo# show running-config | section "^snmp-server"
# snmp-server user admin network-admin auth md5 0xcbde46b02c46e0bcd3ac5af6a8b13da9 priv 0xcbde46b02c46e0bcd3ac5af6a8b13da9 localizedkey

- name: Merge the provided configuration with the existing running configuration
  cisco.nxos.nxos_snmp_server:
    config:
      aaa_user:
        cache_timeout: 36000
      communities:
        - community: public
          group: network-operator
        - community: private
          group: network-admin
      contact: nxosswitchadmin@localhost
      location: serverroom-1
      traps:
        aaa:
          server_state_change: true
        system:
          clock_change_notification: true
      hosts:
        - host: 192.0.2.1
          traps: true
          version: '1'
          community: public
        - host: 192.0.2.1
          source_interface: Ethernet1/1
        - host: 192.0.2.2
          informs: true
          version: '3'
          auth: NMS
      users:
        auth:
          - user: snmp_user_1
            group: network-operator
            authentication:
              algorithm: md5
              password: '0x5632724fb8ac3699296af26281e1d0f1'
              localized_key: true
          - user: snmp_user_2
            group: network-operator
            authentication:
              algorithm: md5
              password: '0x5632724fb8ac3699296af26281e1d0f1'
              localized_key: true
              priv:
                privacy_password: '0x5632724fb8ac3699296af26281e1d0f1'
                aes_128: true
        use_acls:
          - user: snmp_user_1
            ipv4: acl1
            ipv6: acl2
          - user: snmp_user_2
            ipv4: acl3
            ipv6: acl4

# Task output
# -------------
# before:
#   users:
#     auth:
#       - user: admin
#         group: network-admin
#         authentication:
#           algorithm: md5
#           password: "0xcbde46b02c46e0bcd3ac5af6a8b13da9"
#           localized_key: true
#           priv:
#             privacy_password: "0xcbde46b02c46e0bcd3ac5af6a8b13da9"
#
# commands:
#   - snmp-server contact nxosswitchadmin@localhost
#   - snmp-server location serverroom-1
#   - snmp-server aaa-user cache-timeout 36000
#   - snmp-server user snmp_user_1 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
#   - snmp-server user snmp_user_2 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 priv aes-128 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
#   - snmp-server user snmp_user_1 use-ipv4acl acl1 use-ipv6acl acl2
#   - snmp-server user snmp_user_2 use-ipv4acl acl3 use-ipv6acl acl4
#   - snmp-server host 192.0.2.1 traps version 1 public
#   - snmp-server host 192.0.2.1 source-interface Ethernet1/1
#   - snmp-server host 192.0.2.2 informs version 3 auth NMS
#   - snmp-server community private group network-admin
#   - snmp-server community public group network-operator
#   - snmp-server enable traps aaa server-state-change
#   - snmp-server enable traps system Clock-change-notification
#
# after:
#   aaa_user:
#      cache_timeout: 36000
#    communities:
#      - community: private
#        group: network-admin
#      - community: public
#        group: network-operator
#    contact: nxosswitchadmin@localhost
#    location: serverroom-1
#    traps:
#      aaa:
#        server_state_change: true
#      system:
#        clock_change_notification: true
#    hosts:
#      - host: 192.0.2.1
#        traps: true
#        version: "1"
#        community: public
#
#      - host: 192.0.2.1
#        source_interface: Ethernet1/1
#
#      - host: 192.0.2.2
#        informs: true
#        version: "3"
#        auth: NMS
#    users:
#      auth:
#        - user: admin
#          group: network-admin
#          authentication:
#            algorithm: md5
#            password: "0xcbde46b02c46e0bcd3ac5af6a8b13da9"
#            localized_key: true
#            priv:
#              privacy_password: "0xcbde46b02c46e0bcd3ac5af6a8b13da9"
#
#        - user: snmp_user_1
#          group: network-operator
#          authentication:
#            algorithm: md5
#            password: "0x5632724fb8ac3699296af26281e1d0f1"
#            localized_key: true
#
#        - authentication:
#            algorithm: md5
#            localized_key: true
#            password: "0x5632724fb8ac3699296af26281e1d0f1"
#            priv:
#              aes_128: true
#              privacy_password: "0x5632724fb8ac3699296af26281e1d0f1"
#          group: network-operator
#          user: snmp_user_2
#
#      use_acls:
#        - user: snmp_user_1
#          ipv4: acl1
#          ipv6: acl2
#        - user: snmp_user_2
#          ipv4: acl3
#          ipv6: acl4

# After state:
# ------------
# nxos-9k-rdo# show running-config | section "^snmp-server"
# snmp-server contact nxosswitchadmin@localhost
# snmp-server location serverroom-1
# snmp-server aaa-user cache-timeout 36000
# snmp-server user admin network-admin auth md5 0xcbde46b02c46e0bcd3ac5af6a8b13da9 priv 0xcbde46b02c46e0bcd3ac5af6a8b13da9 localizedkey
# snmp-server user snmp_user_1 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
# snmp-server user snmp_user_2 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 priv aes-128 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
# snmp-server user snmp_user_1 use-ipv4acl acl1 use-ipv6acl acl2
# snmp-server user snmp_user_2 use-ipv4acl acl3 use-ipv6acl acl4
# snmp-server host 192.0.2.1 traps version 1 public
# snmp-server host 192.0.2.1 source-interface Ethernet1/1
# snmp-server host 192.0.2.2 informs version 3 auth NMS
# snmp-server community private group network-admin
# snmp-server community public group network-operator
# snmp-server enable traps aaa server-state-change
# snmp-server enable traps system Clock-change-notification

# Using replaced

# Before state:
# ------------
# nxos-9k-rdo# show running-config | section "^snmp-server"
# snmp-server contact nxosswitchadmin@localhost
# snmp-server location serverroom-1
# snmp-server aaa-user cache-timeout 36000
# snmp-server user admin network-admin auth md5 0xcbde46b02c46e0bcd3ac5af6a8b13da9 priv 0xcbde46b02c46e0bcd3ac5af6a8b13da9 localizedkey
# snmp-server user snmp_user_1 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
# snmp-server user snmp_user_2 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 priv aes-128 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
# snmp-server user snmp_user_1 use-ipv4acl acl1 use-ipv6acl acl2
# snmp-server user snmp_user_2 use-ipv4acl acl3 use-ipv6acl acl4
# snmp-server host 192.0.2.1 traps version 1 public
# snmp-server host 192.0.2.1 source-interface Ethernet1/1
# snmp-server host 192.0.2.2 informs version 3 auth NMS
# snmp-server community private group network-admin
# snmp-server community public group network-operator
# snmp-server enable traps aaa server-state-change
# snmp-server enable traps system Clock-change-notification

- name: Replace snmp-server configurations of listed snmp-server with provided configurations
  cisco.nxos.nxos_snmp_server:
    config:
      aaa_user:
        cache_timeout: 36000
      communities:
        - community: public
          group: network-operator
        - community: secret
          group: network-operator
      contact: nxosswitchadmin2@localhost
      location: serverroom-2
      traps:
        aaa:
          server_state_change: true
      hosts:
        - host: 192.0.2.1
          traps: true
          version: '1'
          community: public
        - host: 192.0.2.1
          source_interface: Ethernet1/1
        - host: 192.0.3.2
          informs: true
          version: '3'
          auth: NMS
      users:
        auth:
          - user: admin
            group: network-admin
            authentication:
              algorithm: md5
              password: "0xcbde46b02c46e0bcd3ac5af6a8b13da9"
              localized_key: true
              priv:
                privacy_password: "0xcbde46b02c46e0bcd3ac5af6a8b13da9"

          - user: snmp_user_1
            group: network-operator
            authentication:
              algorithm: md5
              password: '0x5632724fb8ac3699296af26281e1d0f1'
              localized_key: true

          - user: snmp_user_2
            group: network-operator
            authentication:
              algorithm: md5
              password: '0x5632724fb8ac3699296af26281e1d0f1'
              localized_key: true
              priv:
                privacy_password: '0x5632724fb8ac3699296af26281e1d0f1'
                aes_128: true
        use_acls:
          - user: snmp_user_1
            ipv4: acl1
            ipv6: acl2
    state: replaced

# Task output
# -------------
# before:
#   aaa_user:
#      cache_timeout: 36000
#    communities:
#      - community: private
#        group: network-admin
#      - community: public
#        group: network-operator
#    contact: nxosswitchadmin@localhost
#    location: serverroom-1
#    traps:
#      aaa:
#        server_state_change: true
#      system:
#        clock_change_notification: true
#    hosts:
#      - host: 192.0.2.1
#        traps: true
#        version: "1"
#        community: public
#
#      - host: 192.0.2.1
#        source_interface: Ethernet1/1
#
#      - host: 192.0.2.2
#        informs: true
#        version: "3"
#        auth: NMS
#    users:
#      auth:
#        - user: admin
#          group: network-admin
#          authentication:
#            algorithm: md5
#            password: "0xcbde46b02c46e0bcd3ac5af6a8b13da9"
#            localized_key: true
#            priv:
#              privacy_password: "0xcbde46b02c46e0bcd3ac5af6a8b13da9"
#
#        - user: snmp_user_1
#          group: network-operator
#          authentication:
#            algorithm: md5
#            password: "0x5632724fb8ac3699296af26281e1d0f1"
#            localized_key: true
#
#        - authentication:
#            algorithm: md5
#            localized_key: true
#            password: "0x5632724fb8ac3699296af26281e1d0f1"
#            priv:
#              aes_128: true
#              privacy_password: "0x5632724fb8ac3699296af26281e1d0f1"
#          group: network-operator
#          user: snmp_user_2
#
#      use_acls:
#        - user: snmp_user_1
#          ipv4: acl1
#          ipv6: acl2
#        - user: snmp_user_2
#          ipv4: acl3
#          ipv6: acl4
#
# commands:
#   - snmp-server contact nxosswitchadmin2@localhost
#   - no snmp-server enable traps system Clock-change-notification
#   - snmp-server location serverroom-2
#   - no snmp-server user snmp_user_2 use-ipv4acl acl3 use-ipv6acl acl4
#   - no snmp-server host 192.0.2.2 informs version 3 auth NMS
#   - snmp-server host 192.0.3.2 informs version 3 auth NMS
#   - no snmp-server community private group network-admin
#   - snmp-server community secret group network-operator
#
# after:
#   aaa_user:
#      cache_timeout: 36000
#    communities:
#      - community: public
#        group: network-operator
#      - community: secret
#        group: network-operator
#    contact: nxosswitchadmin2@localhost
#    location: serverroom-2
#    traps:
#      aaa:
#        server_state_change: true
#    hosts:
#      - host: 192.0.2.1
#        traps: true
#        version: '1'
#        community: public
#      - host: 192.0.2.1
#        source_interface: Ethernet1/1
#      - host: 192.0.3.2
#        informs: true
#        version: '3'
#        auth: NMS
#    users:
#      auth:
#        - user: admin
#          group: network-admin
#          authentication:
#            algorithm: md5
#            password: "0xcbde46b02c46e0bcd3ac5af6a8b13da9"
#            localized_key: true
#            priv:
#              privacy_password: "0xcbde46b02c46e0bcd3ac5af6a8b13da9"
#
#        - user: snmp_user_1
#          group: network-operator
#          authentication:
#            algorithm: md5
#            password: '0x5632724fb8ac3699296af26281e1d0f1'
#            localized_key: true
#
#        - user: snmp_user_2
#          group: network-operator
#          authentication:
#            algorithm: md5
#            password: '0x5632724fb8ac3699296af26281e1d0f1'
#            localized_key: true
#            priv:
#              privacy_password: '0x5632724fb8ac3699296af26281e1d0f1'
#              aes_128: true
#
#      use_acls:
#        - user: snmp_user_1
#          ipv4: acl1
#          ipv6: acl2
#

# After state:
# ------------
# nxos-9k-rdo# show running-config | section "^snmp-server"
# snmp-server contact nxosswitchadmin2@localhost
# snmp-server location serverroom-2
# snmp-server aaa-user cache-timeout 36000
# snmp-server user admin network-admin auth md5 0xcbde46b02c46e0bcd3ac5af6a8b13da9 priv 0xcbde46b02c46e0bcd3ac5af6a8b13da9 localizedkey
# snmp-server user snmp_user_1 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
# snmp-server user snmp_user_2 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 priv aes-128 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
# snmp-server user snmp_user_1 use-ipv4acl acl1 use-ipv6acl acl2
# snmp-server user snmp_user_2 use-ipv4acl acl3 use-ipv6acl acl4
# snmp-server host 192.0.2.1 traps version 1 public
# snmp-server host 192.0.2.1 source-interface Ethernet1/1
# snmp-server host 192.0.2.2 informs version 3 auth NMS
# snmp-server community secret group network-operator
# snmp-server community public group network-operator
# snmp-server enable traps aaa server-state-change
# snmp-server enable traps system Clock-change-notification

# Using deleted

# Before state:
# ------------
# nxos-9k-rdo# show running-config | section "^snmp-server"
# snmp-server contact nxosswitchadmin@localhost
# snmp-server location serverroom-1
# snmp-server aaa-user cache-timeout 36000
# snmp-server user admin network-admin auth md5 0xcbde46b02c46e0bcd3ac5af6a8b13da9 priv 0xcbde46b02c46e0bcd3ac5af6a8b13da9 localizedkey
# snmp-server user snmp_user_1 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
# snmp-server user snmp_user_2 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 priv aes-128 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
# snmp-server user snmp_user_1 use-ipv4acl acl1 use-ipv6acl acl2
# snmp-server user snmp_user_2 use-ipv4acl acl3 use-ipv6acl acl4
# snmp-server host 192.0.2.1 traps version 1 public
# snmp-server host 192.0.2.1 source-interface Ethernet1/1
# snmp-server host 192.0.2.2 informs version 3 auth NMS
# snmp-server community private group network-admin
# snmp-server community public group network-operator
# snmp-server enable traps aaa server-state-change
# snmp-server enable traps system Clock-change-notification

- name: Delete SNMP Server configurations from the device (admin user will not be deleted)
  cisco.nxos.nxos_snmp_server:
    state: deleted

# Task output
# -------------
# before:
#   aaa_user:
#      cache_timeout: 36000
#    communities:
#      - community: private
#        group: network-admin
#      - community: public
#        group: network-operator
#    contact: nxosswitchadmin@localhost
#    location: serverroom-1
#    traps:
#      aaa:
#        server_state_change: true
#      system:
#        clock_change_notification: true
#    hosts:
#      - host: 192.0.2.1
#        traps: true
#        version: "1"
#        community: public
#
#      - host: 192.0.2.1
#        source_interface: Ethernet1/1
#
#      - host: 192.0.2.2
#        informs: true
#        version: "3"
#        auth: NMS
#    users:
#      auth:
#        - user: admin
#          group: network-admin
#          authentication:
#            algorithm: md5
#            password: "0xcbde46b02c46e0bcd3ac5af6a8b13da9"
#            localized_key: true
#            priv:
#              privacy_password: "0xcbde46b02c46e0bcd3ac5af6a8b13da9"
#
#        - user: snmp_user_1
#          group: network-operator
#          authentication:
#            algorithm: md5
#            password: "0x5632724fb8ac3699296af26281e1d0f1"
#            localized_key: true
#
#        - authentication:
#            algorithm: md5
#            localized_key: true
#            password: "0x5632724fb8ac3699296af26281e1d0f1"
#            priv:
#              aes_128: true
#              privacy_password: "0x5632724fb8ac3699296af26281e1d0f1"
#          group: network-operator
#          user: snmp_user_2
#
#      use_acls:
#        - user: snmp_user_1
#          ipv4: acl1
#          ipv6: acl2
#        - user: snmp_user_2
#          ipv4: acl3
#          ipv6: acl4
#
# commands:
#   - no snmp-server contact nxosswitchadmin@localhost
#   - no snmp-server location serverroom-1
#   - no snmp-server aaa-user cache-timeout 36000
#   - no snmp-server user admin network-admin auth md5 0xcbde46b02c46e0bcd3ac5af6a8b13da9 priv 0xcbde46b02c46e0bcd3ac5af6a8b13da9 localizedkey
#   - no snmp-server user snmp_user_1 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
#   - no snmp-server user snmp_user_2 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 priv aes-128 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
#   - no snmp-server user snmp_user_1 use-ipv4acl acl1 use-ipv6acl acl2
#   - no snmp-server user snmp_user_2 use-ipv4acl acl3 use-ipv6acl acl4
#   - no snmp-server host 192.0.2.1 traps version 1 public
#   - no snmp-server host 192.0.2.1 source-interface Ethernet1/1
#   - no snmp-server host 192.0.2.2 informs version 3 auth NMS
#   - no snmp-server community private group network-admin
#   - no snmp-server community public group network-operator
#   - no snmp-server enable traps aaa server-state-change
#   - no snmp-server enable traps system Clock-change-notification
#
# after:
#   users:
#     auth:
#       - user: admin
#         group: network-admin
#         authentication:
#           algorithm: md5
#           password: "0xcbde46b02c46e0bcd3ac5af6a8b13da9"
#           localized_key: true
#           priv:
#             privacy_password: "0xcbde46b02c46e0bcd3ac5af6a8b13da9"

# After state:
# ------------
# nxos-9k-rdo# show running-config | section "^snmp-server"
# snmp-server user admin network-admin auth md5 0xcbde46b02c46e0bcd3ac5af6a8b13da9 priv 0xcbde46b02c46e0bcd3ac5af6a8b13da9 localizedkey

# Using rendered
# ---------------

- name: Render platform specific configuration lines with state rendered (without connecting to the device)
  cisco.nxos.nxos_snmp_server:
    config:
      aaa_user:
        cache_timeout: 36000
      communities:
        - community: public
          group: network-operator
        - community: private
          group: network-admin
      contact: nxosswitchadmin@localhost
      location: serverroom-1
      traps:
        aaa:
          server_state_change: true
        system:
          clock_change_notification: true
      hosts:
        - host: 192.0.2.1
          traps: true
          version: '1'
          community: public
        - host: 192.0.2.1
          source_interface: Ethernet1/1
        - host: 192.0.2.2
          informs: true
          version: '3'
          auth: NMS
      users:
        auth:
          - user: snmp_user_1
            group: network-operator
            authentication:
              algorithm: md5
              password: '0x5632724fb8ac3699296af26281e1d0f1'
              localized_key: true
          - user: snmp_user_2
            group: network-operator
            authentication:
              algorithm: md5
              password: '0x5632724fb8ac3699296af26281e1d0f1'
              localized_key: true
              priv:
                privacy_password: '0x5632724fb8ac3699296af26281e1d0f1'
                aes_128: true
        use_acls:
          - user: snmp_user_1
            ipv4: acl1
            ipv6: acl2
          - user: snmp_user_2
            ipv4: acl3
            ipv6: acl4
    state: rendered


# Task Output (redacted)
# -----------------------
#  rendered:
#    - snmp-server contact nxosswitchadmin@localhost
#    - snmp-server location serverroom-1
#    - snmp-server aaa-user cache-timeout 36000
#    - snmp-server user snmp_user_1 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
#    - snmp-server user snmp_user_2 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 priv aes-128 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
#    - snmp-server user snmp_user_1 use-ipv4acl acl1 use-ipv6acl acl2
#    - snmp-server user snmp_user_2 use-ipv4acl acl3 use-ipv6acl acl4
#    - snmp-server host 192.0.2.1 traps version 1 public
#    - snmp-server host 192.0.2.1 source-interface Ethernet1/1
#    - snmp-server host 192.0.2.2 informs version 3 auth NMS
#    - snmp-server community private group network-admin
#    - snmp-server community public group network-operator
#    - snmp-server enable traps aaa server-state-change
#    - snmp-server enable traps system Clock-change-notification

# Using parsed

# parsed.cfg
# ------------
# snmp-server contact nxosswitchadmin@localhost
# snmp-server location serverroom-1
# snmp-server aaa-user cache-timeout 36000
# snmp-server user snmp_user_1 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
# snmp-server user snmp_user_2 network-operator auth md5 0x5632724fb8ac3699296af26281e1d0f1 priv aes-128 0x5632724fb8ac3699296af26281e1d0f1 localizedkey
# snmp-server user snmp_user_1 use-ipv4acl acl1 use-ipv6acl acl2
# snmp-server user snmp_user_2 use-ipv4acl acl3 use-ipv6acl acl4
# snmp-server host 192.0.2.1 traps version 1 public
# snmp-server host 192.0.2.1 source-interface Ethernet1/1
# snmp-server host 192.0.2.2 informs version 3 auth NMS
# snmp-server community private group network-admin
# snmp-server community public group network-operator
# snmp-server enable traps aaa server-state-change
# snmp-server enable traps system Clock-change-notification

- name: Parse externally provided snmp-server configuration
  cisco.nxos.nxos_snmp_server:
    running_config: "{{ lookup('file', './parsed.cfg') }}"
    state: parsed

# Task output (redacted)
# -----------------------
#  parsed:
#   aaa_user:
#      cache_timeout: 36000
#    communities:
#      - community: private
#        group: network-admin
#      - community: public
#        group: network-operator
#    contact: nxosswitchadmin@localhost
#    location: serverroom-1
#    traps:
#      aaa:
#        server_state_change: true
#      system:
#        clock_change_notification: true
#    hosts:
#      - host: 192.0.2.1
#        traps: true
#        version: "1"
#        community: public
#
#      - host: 192.0.2.1
#        source_interface: Ethernet1/1
#
#      - host: 192.0.2.2
#        informs: true
#        version: "3"
#        auth: NMS
#    users:
#      auth:
#        - user: snmp_user_1
#          group: network-operator
#          authentication:
#            algorithm: md5
#            password: "0x5632724fb8ac3699296af26281e1d0f1"
#            localized_key: true
#
#        - authentication:
#            algorithm: md5
#            localized_key: true
#            password: "0x5632724fb8ac3699296af26281e1d0f1"
#            priv:
#              aes_128: true
#              privacy_password: "0x5632724fb8ac3699296af26281e1d0f1"
#          group: network-operator
#          user: snmp_user_2
#
#      use_acls:
#        - user: snmp_user_1
#          ipv4: acl1
#          ipv6: acl2
#        - user: snmp_user_2
#          ipv4: acl3
#          ipv6: acl4
#

返回值

常见返回值在此处记录此处,以下是此模块独有的字段

描述

after

字典

模块执行后的结果配置。

返回: 当已更改时

示例: "此 输出 将始终 模块的 argspec 格式相同。\n"

before

字典

模块执行之前的配置。

返回: 当 *state* 为 merged, replaced, overridden, deletedpurged

示例: "此 输出 将始终 模块的 argspec 格式相同。\n"

commands

列表 / 元素=字符串

推送到远程设备的一组命令。

返回: 当 *state* 为 merged, replaced, overridden, deletedpurged

示例: ["示例 命令 1", "示例 命令 2", "示例 命令 3"]

gathered

列表 / 元素=字符串

从远程设备收集的有关网络资源的事实,以结构化数据的形式呈现。

返回: 当 *state* 为 gathered

示例: ["此 输出 将始终 模块的 argspec 格式相同。\n"]

parsed

列表 / 元素=字符串

在 *running_config* 选项中提供的设备本机配置,根据模块argspec解析为结构化数据。

返回: 当 *state* 为 parsed

示例: ["此 输出 将始终 模块的 argspec 格式相同。\n"]

rendered

列表 / 元素=字符串

以设备本机格式(离线)呈现任务中提供的配置。

返回: 当 *state* 为 rendered

示例: ["示例 命令 1", "示例 命令 2", "示例 命令 3"]

作者

  • Nilashish Chakraborty (@NilashishC)