cli_config – Настройка конфигурации на основе текста на сетевых устройствах через network_cli
Новая версия 2.7.
Обзор
- Этот модуль предоставляет платформенно-независимый способ передачи конфигурации на основе текста на сетевые устройства через плагин подключения к сети network_cli.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| commit boolean |
| Аргумент commit инструктирует модуль направить конфигурацию на устройство. Он сопоставляется с режимом проверки модуля. |
| commit_comment string | Аргумент commit_comment указывает строку текста, которая будет использоваться при фиксации конфигурации. Если аргумент commit установлен в значение False, этот аргумент игнорируется. Этот аргумент действителен только для платформ, поддерживающих операцию фиксации с комментарием. | |
| config string | Конфигурация, которая будет направлена на сетевое устройство. Этот аргумент взаимоисключающий с rollback, и должен быть указан один из этих вариантов. Конфигурация должна иметь отступы, используемые устройством. | |
| defaults boolean |
| Аргумент defaults повлияет на то, как будет собрана текущая конфигурация с устройства. Если значение установлено в true, команда, используемая для сбора текущей конфигурации, дополняется ключевым словом all. Если значение установлено в false, команда выполняется без ключевого слова all. |
| diff_ignore_lines - | Используйте этот аргумент для указания одной или нескольких строк, которые должны быть пропущены при выполнении сравнения. Это используется для строк в конфигурации, которые автоматически обновляются системой. Этот аргумент принимает список регулярных выражений или точных совпадений строк. Обратите внимание, что этот параметр будет проигнорирован, если платформа поддерживает встроенное сравнение. | |
| diff_match - |
| Указывает модулю способ сравнения набора команд с текущей конфигурацией устройства. Если diff_match установлено в line, команды сравниваются построчно. Если diff_match установлено в strict, строки команд сравниваются относительно позиции. Если diff_match установлено в exact, строки команд должны точно совпадать. Наконец, если diff_match установлено в none, модуль не будет пытаться сравнить исходную конфигурацию с текущей конфигурацией на удалённом устройстве. Обратите внимание, что этот параметр будет проигнорирован, если платформа поддерживает встроенное сравнение. |
| diff_replace - |
| Указывает модулю способ внесения изменений в конфигурацию устройства. Если аргумент diff_replace установлен в line, изменённые строки направляются устройству в режиме конфигурации. Если аргумент установлен в block, весь блок команд направляется устройству в режиме конфигурации, если какая-либо строка некорректна. Обратите внимание, что этот параметр будет проигнорирован, если платформа поддерживает встроенное сравнение. |
| multiline_delimiter string | Этот аргумент используется при передаче многострочного элемента конфигурации на устройство. Он определяет символ, используемый в качестве разделителя. Это относится только к действию конфигурации. | |
| replace string | Если аргумент replace установлен в значение yes, он заменит всю текущую конфигурацию устройства значением аргумента config. Для устройств NXOS аргумент replace принимает путь к файлу на устройстве, который будет использован для замены всей текущей конфигурации. Устройства Nexus 9K поддерживают только replace. Используйте модули net_put или nxos_file_copy для копирования текстового файла на удалённое устройство, а затем установите полный путь к этому аргументу. | |
| rollback - | Аргумент rollback инструктирует модуль выполнить откат текущей конфигурации до идентификатора, указанного в аргументе. Если указанный идентификатор отката не существует на удалённом устройстве, модуль завершится с ошибкой. Чтобы выполнить откат до последней фиксации, установите аргумент rollback в значение 0. Этот параметр взаимоисключающий с config. |
Примеры
- name: configure device with config
cli_config:
config: "{{ lookup('template', 'basic/config.j2') }}"
- name: multiline config
cli_config:
config: |
hostname foo
feature nxapi
- name: configure device with config with defaults enabled
cli_config:
config: "{{ lookup('template', 'basic/config.j2') }}"
defaults: yes
- name: Use diff_match
cli_config:
config: "{{ lookup('file', 'interface_config') }}"
diff_match: none
- name: nxos replace config
cli_config:
replace: 'bootflash:nxoscfg'
- name: commit with comment
cli_config:
config: set system host-name foo
commit_comment: this is a test
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| commands list | всегда | Набор команд, которые будут переданы на удалённое устройство Пример: ['interface Loopback999', 'no shutdown'] |
Статус
- Не гарантируется обратная совместимость интерфейса этого модуля. [превью]
- Этот модуль поддерживается командой Ansible Network. [сетевой]
Поддержка Red Hat
Дополнительную информацию о поддержке этого модуля компанией Red Hat можно получить в этой статье базы знаний Red Hat.
Авторы
- Trishna Guha (@trishnaguha)
Подсказка
Если вы обнаружите какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/cli_config_module.html