Spec-Zone.ru › Ansible 2.9

cli_config – Передача текстовой конфигурации на сетевые устройства через network_cli

Новое в версии 2.7.

  • Описание
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус

Описание

  • Этот модуль предоставляет платформенно-независимый способ передачи текстовой конфигурации на сетевые устройства через плагин подключения network_cli.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
backup
boolean
добавлен в 2.8
    Варианты:
  • no ←
  • yes
Этот аргумент заставит модуль создать полную резервную копию текущей рабочей конфигурации удаленного устройства перед внесением каких-либо изменений. Если значение backup_options не указано, файл резервной копии записывается в папку backup в корневой директории плейбука или в корневой директории роли, если плейбук является частью роли Ansible. Если директория не существует, она создается.
backup_options
словарь
добавлен в 2.8
Это объект типа dict, содержащий настраиваемые параметры, относящиеся к пути к файлу резервной копии. Значение этого параметра читается только тогда, когда backup установлено в yes; если backup установлено в no, этот параметр будет проигнорирован.
dir_path
путь
Этот параметр указывает путь, заканчивающийся именем директории, в которой будет храниться файл резервной копии конфигурации. Если директория не существует, она будет создана. Имя файла – либо значение filename, либо имя файла по умолчанию, как описано в описании параметров filename. Если значение пути не указано, в текущей рабочей директории будет создана директория backup, и резервная копия конфигурации будет скопирована в filename внутри директории backup.
filename
-
Имя файла для сохранения резервной копии конфигурации. Если имя файла не указано, оно будет сгенерировано на основе имени хоста, текущей даты и времени в формате <имя_хоста>_config.<дата>@<время>
commit
boolean
    Варианты:
  • no
  • yes
Аргумент commit указывает модулю выполнить применение конфигурации на устройстве. Это сопоставляется с режимом проверки модуля.
commit_comment
строка
Аргумент commit_comment задает строку текста, которая будет использоваться при применении конфигурации. Если аргумент commit установлен в False, этот аргумент будет проигнорирован. Этот аргумент допустим только для платформ, поддерживающих операцию применения с комментарием.
config
строка
Конфигурация, которая должна быть применена к сетевому устройству. Этот аргумент взаимоисключающий с rollback, и один из них должен быть предоставлен в качестве входных данных. Конфигурация должна иметь отступы, используемые устройством.
defaults
boolean
    Варианты:
  • no ←
  • yes
Аргумент defaults повлияет на то, как собирается running-config с устройства. Когда значение установлено в true, команда для сбора running-config дополняется ключевым словом all. Когда значение установлено в false, команда выполняется без ключевого слова all.
diff_ignore_lines
-
Используйте этот аргумент для указания одной или нескольких строк, которые следует игнорировать во время сравнения. Это используется для строк в конфигурации, которые автоматически обновляются системой. Этот аргумент принимает список регулярных выражений или точных совпадений строк. Обратите внимание, что этот параметр будет проигнорирован, если платформа поддерживает сравнение на устройстве.
diff_match
-
    Варианты:
  • строка
  • строго
  • точно
  • нет
Указывает модулю, как выполнять сопоставление набора команд с текущей конфигурацией устройства. Если diff_match установлено в строка, команды сопоставляются по строкам. Если diff_match установлено в строго, строки команд сопоставляются относительно позиции. Если diff_match установлено в точно, строки команд должны быть точным совпадением. Наконец, если diff_match установлено в нет, модуль не будет пытаться сравнить исходную конфигурацию с текущей конфигурацией удалённого устройства. Обратите внимание, что этот параметр будет проигнорирован, если платформа поддерживает сравнение на устройстве.
diff_replace
-
    Варианты:
  • строка
  • блок
  • конфигурация
Указывает модулю, как выполнять конфигурацию на устройстве. Если аргумент diff_replace установлен в строка, то изменённые строки отправляются на устройство в режиме конфигурации. Если аргумент установлен в блок, то весь блок команд отправляется на устройство в режиме конфигурации, если какая-либо строка некорректна. Обратите внимание, что этот параметр будет проигнорирован, если платформа поддерживает сравнение на устройстве.
multiline_delimiter
строка
Этот аргумент используется при применении многострочной конфигурационной записи на устройство. Он указывает символ, который будет использоваться в качестве разделителя. Это относится только к действию конфигурации.
replace
строка
Если аргумент replace установлен в значение yes, он заменит всю текущую конфигурацию устройства значением аргумента config. Для устройств, поддерживающих замену текущей конфигурации из файла на устройстве (например, NXOS/JUNOS), аргумент replace принимает путь к файлу на устройстве, который будет использоваться для замены всей текущей конфигурации. Значение параметра config должно быть None для таких устройств. Устройства Nexus 9K поддерживают только замену. Используйте net_put или nxos_file_copy в случае модуля NXOS для копирования плоского файла на удалённое устройство, а затем установите полный путь к этому аргументу.
rollback
-
Аргумент rollback указывает модулю откатить текущую конфигурацию к идентификатору, указанному в аргументе. Если указанный идентификатор отката не существует на удалённом устройстве, модуль завершится с ошибкой. Для отката до последнего применения, установите значение аргумента rollback в 0. Этот параметр взаимоисключающий с config.

Примечания

Примечание

  • Этот модуль поддерживается на ansible_network_os сетевых платформах. Подробности см. в Параметры сетевых платформ.

Примеры

- 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: junos replace config
  cli_config:
    replace: '/var/home/ansible/junos01.cfg'

- name: commit with comment
  cli_config:
    config: set system host-name foo
    commit_comment: this is a test

- name: configurable backup path
  cli_config:
    config: "{{ lookup('template', 'basic/config.j2') }}"
    backup: yes
    backup_options:
      filename: backup.cfg
      dir_path: /home/user

Возвращаемые значения

Общие значения возврата задокументированы здесь, следующие поля уникальны для данного модуля:

Ключ Возвращаемое значение Описание
backup_path
строка
при backup равно yes
Полный путь к файлу резервной копии

Пример:
/playbooks/ansible/backup/hostname_config.2016-07-16@22:28:34
commands
список
всегда
Набор команд, которые будут отправлены на удалённое устройство

Пример:
['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.9/modules/cli_config_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API