community.network.ordnance_config 模块 – 管理 Ordnance 配置段

注意

此模块是 community.network 集合 (版本 5.1.0) 的一部分。

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

要安装它,请使用:ansible-galaxy collection install community.network

要在 playbook 中使用它,请指定:community.network.ordnance_config

注意

community.network 集合已被弃用,并将从 Ansible 12 中移除。请参阅 讨论主题 获取更多信息。

已弃用

在以下版本中移除:

版本 6.0.0

原因:

此集合及其中的所有内容均未维护且已弃用。

替代方案:

未知。

概要

  • Ordnance 路由器配置使用简单的块缩进文件语法将配置分割成多个段。此模块提供了一种以确定性方式处理这些配置段的实现。

别名:network.ordnance.ordnance_config

参数

参数

注释

after

字符串

如果需要进行更改,则将附加到命令堆栈末尾的命令的有序集合。与before一样,这允许 playbook 设计者追加一组要在命令集之后执行的命令。

backup

布尔值

此参数将导致模块在进行任何更改之前创建远程设备当前running-config的完整备份。备份文件写入 playbook 根目录中的backup文件夹。如果目录不存在,则会创建它。

选项

  • false ← (默认)

  • true

before

字符串

如果需要进行更改,则要推送到命令堆栈的有序命令集。这允许 playbook 设计者有机会在推送任何更改之前执行配置命令,而不会影响如何将命令集与系统匹配。

config

字符串

config参数允许 playbook 设计者提供用作验证必要配置更改的基线配置。如果提供此参数,模块将不会从远程节点下载 running-config。

defaults

布尔值

此参数指定获取远程设备运行配置时是否收集所有默认值。启用后,模块将通过发出命令show running-config all来获取当前配置。

选项

  • false ← (默认)

  • true

lines

别名:commands

字符串

应在部分中配置的有序命令集。命令必须与设备 running-config 中找到的命令完全相同。请务必注意配置命令语法,因为某些命令会由设备配置解析器自动修改。

match

字符串

指示模块如何对命令集与当前设备配置进行匹配。如果 match 设置为line,则逐行匹配命令。如果 match 设置为strict,则命令行将根据位置进行匹配。如果 match 设置为exact,则命令行必须完全匹配。最后,如果 match 设置为none,则模块将不会尝试将源配置与远程设备上的运行配置进行比较。

选项

  • "line" ← (默认)

  • "strict"

  • "exact"

  • "none"

multiline_delimiter

字符串

将多行配置元素推送到 Ordnance 路由器时使用此参数。它指定用作分隔符的字符。这仅适用于配置操作

默认值: "@"

parents

字符串

唯一标识应检查命令的部分或层次结构的有序父级集合。如果省略 parents 参数,则将针对顶级或全局命令集检查命令。

replace

字符串

指示模块如何在设备上执行配置。如果 replace 参数设置为line,则修改后的行将被推送到配置模式下的设备。如果 replace 参数设置为block,则如果任何一行不正确,则整个命令块将被推送到配置模式下的设备。

选项

  • "line" ← (默认)

  • "block"

save

布尔值

save参数指示模块在模块运行结束时将运行配置保存到启动配置。如果指定了检查模式,则会忽略此参数。

选项

  • false ← (默认)

  • true

src

字符串

指定包含要加载的配置或配置模板的文件的源路径。源文件的路径可以是 Ansible 控制主机上的完整路径,也可以是 playbook 或角色根目录的相对路径。此参数与linesparents互斥。

示例

---
# Note: examples below use the following provider dict to handle
#       transport and authentication to the node.
vars:
  cli:
    host: "{{ inventory_hostname }}"
    username: RouterName
    password: password
    transport: cli

---
- name: Configure top level configuration
  community.network.ordnance_config:
    lines: hostname {{ inventory_hostname }}
    provider: "{{ cli }}"

- name: Configure interface settings
  community.network.ordnance_config:
    lines:
      - description test interface
      - ip address 172.31.1.1 255.255.255.0
    parents: interface Ethernet1
    provider: "{{ cli }}"

- name: Configure bgp router
  community.network.ordnance_config:
    lines:
      - neighbor 1.1.1.1 remote-as 1234
      - network 10.0.0.0/24
    parents: router bgp 65001
    provider: "{{ cli }}"

返回值

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

描述

backup_path

字符串

备份文件的完整路径

返回:当 backup 为 yes 时

示例: "/playbooks/ansible/backup/ordnance_config.2016-07-16@22:28:34"

更新

列表 / 元素=字符串

将推送到远程设备的命令集

返回: 仅当指定 commands 时。

示例: ["...", "..."]

状态

  • 此模块将在 6.0.0 版本中移除。[已弃用]

  • 更多信息请参见 已弃用

作者

  • Alexander Turner (@alexanderturner)