cisco.ios.ios_logging_global非幂等问题排查与解决方法咨询
模块幂等性说明
cisco.ios.ios_logging_global模块本身是按照幂等性设计的,正常情况下多次执行不会重复修改设备配置,你遇到的非幂等问题属于cisco.ios 2.5版本的已知适配问题,或参数配置疏漏导致的异常。
幂等性修复方案
- 显式指定
state: merged参数
你当前的配置未显式声明操作状态,cisco.ios 2.5版本该模块的默认状态行为偶发不一致,显式指定state: merged后,模块只会追加你定义的日志服务器配置,不会修改其他已有配置,也不会重复执行新增操作。 - 补充host条目的默认参数
cisco.ios 2.5版本对日志服务器条目做配置比对时,会校验端口、vrf等可选参数,如果你未自定义这些参数,需要补充默认值避免模块误判配置不一致,触发重复执行。
修改后的完整playbook示例:
--- - name: "Add new logging server" hosts: all gather_facts: no tasks: - name: Add logging server cisco.ios.ios_logging_global: config: hosts: - hostname: 10.255.0.2 port: 514 vrf: default logging_on: enable trap: informational state: merged
- 若修改参数后仍存在非幂等问题,可将cisco.ios集合升级至3.0及以上版本,该版本修复了多个ios_logging_global模块的幂等性bug,且与Ansible 2.10版本兼容。
内容的提问来源于stack exchange,提问作者Fredrik Karlsson
相关产品推荐
相关产品推荐

