community.network.icx_config 模块 – 管理 Ruckus ICX 7000 系列交换机的配置段
注意
此模块是 community.network 集合 (版本 5.1.0) 的一部分。
如果您正在使用 ansible
包,则可能已经安装了此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install community.network
。
要在 playbook 中使用它,请指定:community.network.icx_config
。
注意
community.network 集合已弃用,并将从 Ansible 12 中移除。请参阅 讨论主题 以了解更多信息。
已弃用
- 在以下版本中移除:
版本 6.0.0
- 原因:
此集合及其中的所有内容均未维护且已弃用。
- 替代方案:
未知。
概要
Ruckus ICX 配置使用简单的块缩进文件语法将配置分割成多个部分。此模块提供了一种确定性地处理 ICX 配置段的实现。
别名:network.icx.icx_config
参数
参数 |
注释 |
---|---|
如果需要进行更改,则将附加到命令堆栈末尾的命令的有序集合。就像使用 *before* 一样,这允许 playbook 设计者附加一组要在命令集之后执行的命令。 |
|
此参数将导致模块在进行任何更改之前创建远程设备当前 选项
|
|
如果需要进行更改,则要推送到命令堆栈的有序命令集。这允许 playbook 设计者有机会在推送任何更改之前执行配置命令,而不会影响如何将命令集与系统匹配。 |
|
此参数指定获取远程设备运行配置时是否收集所有默认值。启用后,模块将通过发出命令 选项
|
|
使用 当此选项配置为 *startup* 时,模块将返回运行配置与启动配置的差异。 当此选项配置为 *intended* 时,模块将返回运行配置与 当此选项配置为 *running* 时,模块将返回运行配置相对于对设备配置所做的任何更改的之前和之后的差异。 选项
|
|
使用此参数指定在差异期间应忽略的一行或多行。这用于系统自动更新的配置中的行。此参数采用正则表达式或精确行匹配的列表。 |
|
|
|
应在部分中配置的命令的有序集合。命令必须与设备运行配置中找到的命令完全相同。请务必注意配置命令语法,因为某些命令会由设备配置解析器自动修改。 |
|
指示模块如何将命令集与当前设备配置进行匹配。如果 match 设置为 *line*,则逐行匹配命令。如果 match 设置为 *strict*,则根据位置匹配命令行。如果 match 设置为 *exact*,则命令行必须是精确匹配。最后,如果 match 设置为 *none*,则模块将不会尝试将源配置与远程设备上的运行配置进行比较。 选项
|
|
将多行配置元素推送到 ICX 设备时使用此参数。它指定用作定界符的字符。这仅适用于配置操作。 默认值: |
|
用于唯一标识应针对其检查命令的节或层次结构的有序父级集。如果省略 parents 参数,则会针对顶级或全局命令集检查命令。 |
|
指示模块在设备上执行配置的方式。如果 replace 参数设置为 line,则修改后的行将以配置模式推送到设备。如果 replace 参数设置为 block,则如果任何一行不正确,则整个命令块将以配置模式推送到设备。 选项
|
|
默认情况下,模块将连接到远程设备并检索当前的 running-config,将其用作与源内容进行比较的基础。有时,不希望任务为 playbook 中的每个任务获取当前的 running-config。running_config 参数允许实现者传入用作比较基础配置的配置。 |
|
对设备运行配置进行更改时,默认情况下不会将更改复制到非易失性存储。使用此参数将在之前更改这一点。如果参数设置为 always,则 running-config 将始终复制到启动配置,并且 modified 标志将始终设置为 True。如果参数设置为 modified,则只有在自上次保存配置以来 running-config 已更改时,才会将其复制到启动配置。如果参数设置为 never,则 running-config 将永远不会复制到配置。如果参数设置为 changed,则只有在任务进行了更改时,才会将 running-config 复制到配置。 选项
|
|
指定包含要加载的配置或配置模板的文件的源路径。源文件的路径可以是 Ansible 控制主机上的完整路径,也可以是从 playbook 或角色根目录的相对路径。此参数与 lines、parents 互斥。 |
备注
注意
已针对 ICX 10.1 进行测试。
有关使用 ICX 平台的信息,请参阅 ICX OS 平台选项指南。
示例
- name: Configure top level configuration
community.network.icx_config:
lines: hostname {{ inventory_hostname }}
- name: Configure interface settings
community.network.icx_config:
lines:
- port-name test string
- ip address 172.31.1.1 255.255.255.0
parents: interface ethernet 1/1/2
- name: Configure ip helpers on multiple interfaces
community.network.icx_config:
lines:
- ip helper-address 172.26.1.10
- ip helper-address 172.26.3.8
parents: "{{ item }}"
with_items:
- interface ethernet 1/1/2
- interface ethernet 1/1/3
- name: Load new acl into device
community.network.icx_config:
lines:
- permit ip host 192.0.2.1 any log
- permit ip host 192.0.2.2 any log
- permit ip host 192.0.2.3 any log
- permit ip host 192.0.2.4 any log
parents: ip access-list extended test
before: no ip access-list extended test
match: exact
- name: Check the running-config against master config
community.network.icx_config:
diff_against: intended
intended_config: "{{ lookup('file', 'master.cfg') }}"
- name: Check the configuration against the running-config
community.network.icx_config:
diff_against: startup
diff_ignore_lines:
- ntp clock .*
- name: For idempotency, use full-form commands
community.network.icx_config:
lines:
# - en
- enable
# parents: int eth1/0/11
parents: interface ethernet 1/1/2
# Set boot image based on comparison to a group_var (version) and the version
# that is returned from the `icx_facts` module
- name: SETTING BOOT IMAGE
community.network.icx_config:
lines:
- no boot system
- boot system flash bootflash:{{new_image}}
host: "{{ inventory_hostname }}"
when: ansible_net_version != version
- name: Render template onto an ICX device
community.network.icx_config:
backup: true
src: "{{ lookup('file', 'config.j2') }}"
返回值
常用的返回值已在 此处 记录,以下是此模块特有的字段
键 |
描述 |
---|---|
备份文件的完整路径 返回:当备份为 yes 时 示例: |
|
将推送到远程设备的命令集 返回:始终 示例: |
|
将推送到远程设备的命令集 返回:始终 示例: |
状态
此模块将在 6.0.0 版中删除。[已弃用]
更多信息请参见 已弃用。