community.network.icx_config – Управление разделами конфигурации коммутаторов Ruckus ICX 7000 серии
Примечание
Этот плагин является частью коллекции community.network (версия 2.0.1).
Для его установки используйте: ansible-galaxy collection install community.network.
Для использования в книге задач укажите: community.network.icx_config.
Обзор
- Конфигурации Ruckus ICX используют простой синтаксис блочного отступа для сегментации конфигурации на разделы. Этот модуль предоставляет реализацию для работы с разделами конфигурации ICX детерминированным способом.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| after список / элементы=строка | Упорядоченный набор команд для добавления в конец стека команд, если необходимо внести изменения. Так же, как и с before, это позволяет разработчику книги задач добавить набор команд для выполнения после набора команд. | |
| backup булево |
| Этот аргумент заставит модуль создать полную резервную копию текущей running-config с удаленного устройства перед внесением каких-либо изменений. Файл резервной копии записывается в папку backup в корневой директории книги задач или корневой директории роли, если книга задач является частью роли Ansible. Если директория не существует, она создается. |
| before список / элементы=строка | Упорядоченный набор команд для помещения в стек команд, если необходимо внести изменения. Это позволяет разработчику книги задач выполнить команды конфигурации до помещения каких-либо изменений, не влияя на то, как набор команд сопоставляется с системой. | |
| defaults булево |
| Этот аргумент указывает, нужно ли собирать все значения по умолчанию при получении конфигурации устройства удаленного устройства. При включении модуль получит текущую конфигурацию, выполнив команду show running-config all. |
| diff_against строка |
| При использовании аргумента командной строки ansible-playbook --diff модуль может генерировать разницы с различными источниками.Когда этот параметр настроен как startup, модуль вернёт разницу между running-config и конфигурацией. Когда этот параметр настроен как intended, модуль вернёт разницу между running-config и конфигурацией, предоставленной в аргументе intended_config.Когда этот параметр настроен как running, модуль вернёт разницу до и после running-config по отношению к любым изменениям, внесённым в конфигурацию устройства. |
| diff_ignore_lines список / элементы=строка | Используйте этот аргумент, чтобы указать одну или несколько строк, которые следует игнорировать во время сравнения. Это используется для строк в конфигурации, которые автоматически обновляются системой. Этот аргумент принимает список регулярных выражений или точных совпадений строк. | |
| intended_config строка | intended_config предоставляет основную конфигурацию, которой должен соответствовать узел, и используется для проверки окончательной running-config. Этот аргумент не будет изменять какие-либо настройки на удалённом устройстве и используется исключительно для проверки соответствия текущей конфигурации устройства. При указании этого аргумента в задаче необходимо также изменить значение diff_against и установить его в intended. | |
| lines список / элементы=строка | Упорядоченный набор команд, которые должны быть настроены в разделе. Команды должны быть точно такими же, как и в конфигурации running устройства. Обратите внимание на синтаксис команд конфигурации, так как некоторые команды автоматически изменяются анализатором конфигурации устройства. псевдонимы: команды | |
| match строка |
| Указывает модулю способ сравнения набора команд с текущей конфигурацией устройства. Если match равен строка, команды сопоставляются построчно. Если match равен строго, строки команд сопоставляются относительно позиции. Если match равен точно, строки команд должны быть одинаковыми. Наконец, если match равен ничего, модуль не будет пытаться сравнить исходную конфигурацию с текущей конфигурацией на удалённом устройстве. |
| multiline_delimiter строка | По умолчанию: "@" | Этот аргумент используется при помещении многострочного элемента конфигурации на устройство ICX. Он определяет символ, используемый в качестве разделителя. Это относится только к действию конфигурации. |
| parents список / элементы=строка | Упорядоченный набор родителей, которые уникально идентифицируют раздел или иерархию, по которым должны проверяться команды. Если аргумент parents опущен, команды проверяются по отношению к набору команд верхнего уровня или глобальных команд. | |
| replace строка |
| Указывает модулю способ выполнения конфигурации на устройстве. Если аргумент replace равен строка, изменённые строки передаются на устройство в режиме конфигурации. Если аргумент replace равен блок, весь блок команд передаётся на устройство в режиме конфигурации, если какая-либо строка неверна. |
| running_config строка | Модуль по умолчанию подключается к удалённому устройству и извлекает текущую конфигурацию running, чтобы использовать её в качестве основы для сравнения с содержимым источника. В некоторых случаях нежелательно, чтобы задача получала текущую конфигурацию running для каждой задачи в книге задач. Аргумент running_config позволяет разработчику передать конфигурацию, используемую в качестве базовой конфигурации для сравнения. псевдонимы: конфигурация | |
| save_when строка |
| Когда в конфигурации running устройства вносятся изменения, эти изменения по умолчанию не копируются в постоянную память. Используя этот аргумент, можно изменить это поведение. Если аргумент равен всегда, то running-config всегда будет скопирована в стартовую конфигурацию, а флаг изменено всегда будет равен True. Если аргумент равен изменено, то running-config будет скопирована в стартовую конфигурацию только в том случае, если она изменилась с момента последнего сохранения конфигурации. Если аргумент равен никогда, running-config никогда не будет скопирована в конфигурацию. Если аргумент равен изменено, то running-config будет скопирована в конфигурацию только в том случае, если задача внесла изменения. |
| src строка | Указывает путь к исходному файлу, содержащему конфигурацию или шаблон конфигурации для загрузки. Путь к исходному файлу может быть полным путём на хосте Ansible или относительным путём от корневой директории книги задач или роли. Этот аргумент взаимоисключает с 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: yes
src: "{{ lookup('file', 'config.j2') }}"
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| backup_path строка | при backup = да | Полный путь к файлу резервной копии Пример: /playbooks/ansible/backup/icx_config.2016-07-16@22:28:34 |
| commands список / элементы=строка | всегда | Набор команд, которые будут переданы на удалённое устройство Пример: ['hostname foo', 'router ospf 1', 'router-id 192.0.2.1'] |
| updates список / элементы=строка | всегда | Набор команд, которые будут переданы на удалённое устройство Пример: ['hostname foo', 'router ospf 1', 'router-id 192.0.2.1'] |
Авторы
- Ruckus Wireless (@Commscope)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/network/icx_config_module.html