Spec-Zone.ru › Ansible 2.8

junos_config – Управление конфигурацией на устройствах Juniper JUNOS

Новая версия с 2.1.

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

Обзор

  • Этот модуль предоставляет реализацию для работы с активной конфигурацией, работающей на устройствах Juniper JUNOS. Он предоставляет набор аргументов для загрузки конфигурации, выполнения операций отката и сброса активной конфигурации на устройстве.

Требования

Ниже перечислены требования к хосту, на котором выполняется этот модуль.

  • ncclient (>=v0.5.2)

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
backup
boolean
добавлено в 2.2
    Варианты:
  • нет ←
  • да
Этот аргумент заставит модуль создать полную резервную копию текущего running-config с удаленного устройства перед внесением каких-либо изменений. Если значение backup_options не указано, файл резервной копии записывается в папку backup в корневой директории playbook или в корневой директории роли, если playbook является частью роли Ansible. Если директория не существует, она создаётся.
backup_options
словарь
добавлено в 2.8
Это объект словаря, содержащий настраиваемые параметры, связанные с путём к файлу резервной копии. Значение этого параметра читается только при backup установлено в да; если backup установлено в нет, этот параметр будет проигнорирован.
dir_path
путь
Этот параметр предоставляет путь, заканчивающийся именем каталога, в котором будет храниться файл конфигурации резервной копии. Если каталог не существует, он будет создан, а имя файла — это значение filename или имя файла по умолчанию, как описано в filename описании параметров. Если значение пути не указано, в текущем рабочем каталоге будет создана папка backup, а конфигурация резервной копии будет скопирована в filename внутри папки backup.
filename
-
Имя файла, используемое для хранения резервной копии конфигурации. Если имя файла не указано, оно будет сгенерировано на основе имени хоста, текущего времени и даты в формате <имя_хоста>_config.<дата>@<время>
check_commit
boolean
добавлено в 2.8
    Варианты:
  • нет ←
  • да
Этот аргумент проверит правильность синтаксиса; изменения не применяются.
Обратите внимание, что этот аргумент может быть использован для подтверждения проверенной конфигурации, выполненной через подтверждённую операцию коммита.
comment
-
Значение по умолчанию:
"настроенно junos_config"
Аргумент comment указывает строку текста, которая будет использоваться при фиксировании конфигурации. Если аргумент confirm установлен в False, этот аргумент будет проигнорирован.
confirm
-
Значение по умолчанию:
0
Аргумент confirm настраивает значение таймаута в минутах для подтверждения коммита перед его автоматическим откатом. Если аргумент confirm установлен в False, этот аргумент будет проигнорирован. Если значение этого аргумента установлено в 0, коммит подтверждается немедленно.
confirm_commit
boolean
добавлено в 2.4
    Варианты:
  • нет ←
  • да
Этот аргумент выполнит операцию коммита на удалённом устройстве. Он может быть использован для подтверждения предыдущего коммита.
lines
-
Этот аргумент принимает список строк конфигурации set или delete для отправки на удалённое устройство. Каждая строка должна начинаться с set или delete. Этот аргумент взаимоисключающий с аргументом src.
provider
словарь
Устаревший
Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli или connection: netconf.
Для получения дополнительной информации см. руководство по параметрам Junos OS Platform Руководство по параметрам платформы Junos.
Объект словаря, содержащий данные подключения.
host
строка / обязательно
Указывает имя хоста DNS или адрес для подключения к удалённому устройству по указанному транспорту. Значение хоста используется в качестве целевого адреса для транспорта.
password
строка
Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_PASSWORD.
port
целое число
Значение по умолчанию:
22
Указывает порт, используемый при создании подключения к удалённому устройству. Значение порта будет по умолчанию равно общеизвестному порту SSH 22 (для transport=cli) или порту 830 (для transport=netconf) устройства.
ssh_keyfile
путь
Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это значение — путь к ключу, используемому для аутентификации сеанса SSH. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_SSH_KEYFILE.
timeout
целое число
Значение по умолчанию:
10
Указывает таймаут в секундах для связи с сетевым устройством при подключении или отправке команд. Если таймаут истечёт до завершения операции, модуль выдаст ошибку.
username
строка
Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_USERNAME.
replace
boolean
    Варианты:
  • нет ←
  • да
Аргумент replace указывает удалённому устройству заменить текущую иерархию конфигурации той, которая указана в соответствующей иерархии исходной конфигурации, загруженной из этого модуля.
Обратите внимание, что этот аргумент следует считать устаревшим. Для достижения эквивалентного результата установите аргумент update в replace. Этот аргумент будет удалён в будущих версиях. Аргументы replace и update взаимоисключающие.
rollback
-
Аргумент rollback указывает модулю откатить текущую конфигурацию до идентификатора, указанного в аргументе. Если указанный идентификатор отката не существует на удалённом устройстве, модуль завершится с ошибкой. Чтобы откатить до последнего коммита, установите аргумент rollback в 0.
src
-
добавлено в 2.2
Аргумент src предоставляет путь к файлу конфигурации, который нужно загрузить на удалённую систему. Путь может быть полным системным путём к файлу конфигурации, если значение начинается с /, или относительным к корню реализованной роли или playbook. Этот аргумент взаимоисключающий с аргументом lines.
src_format
-
добавлено в 2.2
    Варианты:
  • xml
  • set
  • текст
  • json
Аргумент src_format указывает формат конфигурации, найденной в src. Если аргумент src_format не указан, модуль попытается определить формат файла конфигурации, указанного в src.
обновить
-
добавлено в 2.3
    Варианты:
  • слить ←
  • переопределить
  • заменить
  • обновить
Этот аргумент определит способ загрузки данных конфигурации, особенно когда кандидатская конфигурация и загруженная конфигурация содержат противоречивые утверждения. Ниже приведены допустимые значения. merge объединяет данные в загруженной конфигурации с кандидатской конфигурацией. Если утверждения в загруженной конфигурации противоречат утверждениям в кандидатской конфигурации, загруженные утверждения заменяют кандидатские. override отбрасывает всю кандидатскую конфигурацию и заменяет её загруженной конфигурацией. replace подменяет каждый уровень иерархии в загруженной конфигурации соответствующим уровнем. update аналогичен параметру переопределения. Новая конфигурация полностью заменяет существующую конфигурацию. Разница возникает, когда конфигурация позже сохраняется. Этот параметр выполняет сравнение между новой кандидатской конфигурацией и существующей сохранённой конфигурацией. Затем он уведомляет только системные процессы, ответственные за изменённые части конфигурации, и отмечает фактические изменения конфигурации как "изменённые".
сбросить
boolean
    Варианты:
  • нет
  • да
Аргумент zeroize используется для полной очистки конфигурации удалённого устройства до начальных значений по умолчанию. Этот аргумент эффективно удалит все текущие утверждения конфигурации на удалённом устройстве.

Примечания

Примечание

  • Для этого модуля требуется, чтобы системная служба netconf была включена на управляемом удалённом устройстве.
  • Сокращённые команды НЕ являются идемпотентными, см. FAQ по сети.
  • Загрузка конфигурации в формате JSON json поддерживается начиная с Junos OS Release 16.1.
  • Обновление override в настоящее время несовместимо с set обозначением.
  • Тестировано на vSRX JUNOS версии 15.1X49-D15.4, vqfx-10000 JUNOS версии 15.1X53-D60.4.
  • Рекомендуемое соединение netconf. См. Параметры платформы Junos OS.
  • Этот модуль также работает с соединениями local для устаревших playbooks.
  • Для получения информации об использовании CLI и netconf см. Руководство по параметрам платформы Junos OS
  • Для получения дополнительной информации об использовании Ansible для управления сетевыми устройствами см. Руководство по сетям Ansible
  • Для получения дополнительной информации об использовании Ansible для управления устройствами Juniper см. https://www.ansible.com/ansible-juniper.

Примеры

- name: load configure file into device
  junos_config:
    src: srx.cfg
    comment: update config

- name: load configure lines into device
  junos_config:
    lines:
      - set interfaces ge-0/0/1 unit 0 description "Test interface"
      - set vlans vlan01 description "Test vlan"
    comment: update config

- name: Set routed VLAN interface (RVI) IPv4 address
  junos_config:
    lines:
      - set vlans vlan01 vlan-id 1
      - set interfaces irb unit 10 family inet address 10.0.0.1/24
      - set vlans vlan01 l3-interface irb.10

- name: Check correctness of commit configuration
  junos_config:
    check_commit: yes

- name: rollback the configuration to id 10
  junos_config:
    rollback: 10

- name: zero out the current configuration
  junos_config:
    zeroize: yes

- name: Set VLAN access and trunking
  junos_config:
    lines:
      - set vlans vlan02 vlan-id 6
      - set interfaces ge-0/0/6.0 family ethernet-switching interface-mode access vlan members vlan02
      - set interfaces ge-0/0/6.0 family ethernet-switching interface-mode trunk vlan members vlan02

- name: confirm a previous commit
  junos_config:
    confirm_commit: yes

- name: for idempotency, use full-form commands
  junos_config:
    lines:
      # - set int ge-0/0/1 unit 0 desc "Test interface"
      - set interfaces ge-0/0/1 unit 0 description "Test interface"

- name: configurable backup path
  junos_config:
    src: srx.cfg
    backup: yes
    backup_options:
      filename: backup.cfg
      dir_path: /home/user

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

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

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

Пример:
/playbooks/ansible/backup/config.2016-07-16@22:28:34
дата
строка
при backup = да
Дата, извлечённая из имени файла резервной копии

Пример:
2016-07-16
filename
строка
при backup = да и имя файла не указано в параметрах backup
Имя файла резервной копии

Пример:
junos01_config.2016-07-16@22:28:34
shortname
строка
при backup = да и имя файла не указано в параметрах backup
Полный путь к файлу резервной копии без временной метки

Пример:
/playbooks/ansible/backup/junos01_config
время
строка
при backup = да
Время, извлечённое из имени файла резервной копии

Пример:
22:28:34


Статус

  • Этот модуль не гарантирует обратной совместимости интерфейса. [предварительная версия]
  • Этот модуль поддерживается командой Ansible Network. [сетевой]

Поддержка Red Hat

Дополнительную информацию о поддержке Red Hat этого модуля можно найти в этой статье базы знаний Red Hat.

Авторы

  • Peter Sprygada (@privateip)

Подсказка

Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/junos_config_module.html

Spec-Zone.ru

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