Spec-Zone.ru › Ansible

Модуль junipernetworks.junos.junos_config – Управление конфигурацией на устройствах Juniper JUNOS

Примечание

Этот модуль является частью коллекции junipernetworks.junos (версия 8.0.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install junipernetworks.junos. Для использования этого модуля требуются дополнительные компоненты. Подробности см. в разделе Требования.

Для использования в playbook, укажите: junipernetworks.junos.junos_config.

Введено в junipernetworks.junos 1.0.0

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

Обзор

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

Псевдонимы: config

Требования

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

  • ncclient (>=v0.5.2)

Параметры

Параметр

Комментарии

backup

логический

Этот аргумент заставит модуль создать полную резервную копию текущей running-config с удалённого устройства перед внесением каких-либо изменений. Если значение backup_options не указано, файл резервной копии записывается в папку backup в корневой директории плейбука или директории корневого роли, если плейбук является частью роли Ansible. Если директория не существует, она создаётся.

Варианты:

  • false ← (по умолчанию)
  • true

backup_options

словарь

Это объект типа dict, содержащий настраиваемые параметры, относящиеся к пути к файлу резервной копии. Значение этого параметра считывается только когда backup установлено в true, если backup установлено в false, этот параметр будет проигнорирован.

backup_format

строка

Этот аргумент определяет формат конфигурации, в котором будет храниться файл резервной копии. Если аргумент не указан, модуль будет использовать формат ‘set’.

Варианты:

  • "xml"
  • "set" ← (по умолчанию)
  • "text"
  • "json"

dir_path

путь

Этот параметр предоставляет путь, заканчивающийся именем каталога, в котором будет храниться файл резервной копии конфигурации. Если директория не существует, она будет создана, а имя файла — либо значение filename, либо имя файла по умолчанию, как описано в описании параметров filename. Если значение пути не указано, в текущей рабочей директории будет создана директория backup, и резервная копия конфигурации будет скопирована в filename внутри директории backup.

filename

строка

Имя файла, которое будет использоваться для хранения резервной копии конфигурации. Если имя файла не указано, оно будет сгенерировано на основе имени хоста, текущей даты и времени в формате <имя_хоста>_config.<дата>@<время>

check_commit

логический

Этот аргумент проверит корректность синтаксиса; изменения не будут применены.

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

Варианты:

  • false ← (по умолчанию)
  • true

comment

строка

Аргумент comment указывает текстовую строку, которая будет использована при коммитировании конфигурации. Если аргумент confirm установлен в False, этот аргумент будет проигнорирован.

По умолчанию: "configured by junos_config"

confirm

целое число

Аргумент confirm настроит значение таймаута в минутах для подтверждения коммита перед его автоматическим откатом. Если значение этого аргумента установлено в 0, коммит подтверждается немедленно, что также является поведением по умолчанию.

По умолчанию: 0

confirm_commit

логический

Этот аргумент выполнит операцию коммита на удалённом устройстве. Его можно использовать для подтверждения предыдущего коммита.

Варианты:

  • false ← (по умолчанию)
  • true

lines

aliases: commands

список / элементы=строка

Этот аргумент принимает список set или delete строк конфигурации для передачи на удалённое устройство. Каждая строка должна начинаться с set или delete. Этот аргумент несовместим с аргументом src.

replace

логический

Аргумент replace указывает удалённому устройству заменить текущую иерархию конфигурации на ту, которая указана в соответствующей иерархии исходной конфигурации, загруженной из этого модуля.

Обратите внимание, что этот аргумент следует считать устаревшим. Для достижения эквивалентного результата установите аргумент update в replace. Этот аргумент будет удалён в будущих релизах. Аргументы replace и update несовместимы.

Варианты:

  • false
  • true

rollback

целое число

Аргумент rollback указывает модулю откатить текущую конфигурацию до идентификатора, указанного в аргументе. Если указанный идентификатор отката не существует на удалённом устройстве, модуль завершится с ошибкой. Для отката до последнего коммита установите аргумент rollback в 0.

src

путь

Аргумент src предоставляет путь к файлу конфигурации, который нужно загрузить в удалённую систему. Путь может быть полным системным путём к файлу конфигурации, если значение начинается с /, или относительным к корню реализованной роли или плейбука. Этот аргумент несовместим с аргументом lines.

src_format

строка

Аргумент src_format определяет формат конфигурации, найденный в src. Если аргумент src_format не указан, модуль попытается определить формат файла конфигурации, указанного в src.

Варианты:

  • "xml"
  • "set"
  • "text"
  • "json"

update

string

Этот аргумент определяет, как загрузить данные конфигурации, особенно когда кандидатская конфигурация и загруженная конфигурация содержат противоречивые утверждения. Принимаемые значения: merge объединяет данные загруженной конфигурации с кандидатской конфигурацией. Если утверждения в загруженной конфигурации противоречат утверждениям в кандидатской конфигурации, загруженные утверждения заменяют кандидатские. override отбрасывает всю кандидатскую конфигурацию и заменяет её загруженной конфигурацией. replace заменяет каждый уровень иерархии в загруженной конфигурации соответствующим уровнем. update аналогичен параметру override. Новая конфигурация полностью заменяет существующую конфигурацию. Различие проявляется при последующем применении конфигурации. Этот параметр выполняет сравнение (diff) между новой кандидатской конфигурацией и существующей сохранённой конфигурацией. Он уведомляет только системные процессы, ответственные за изменённые части конфигурации, и помечает фактические изменения конфигурации как «изменённые».

Варианты:

  • "merge" ← (по умолчанию)
  • "override"
  • "replace"
  • "update"

zeroize

boolean

Аргумент zeroize используется для полной очистки конфигурации удалённого устройства до исходных значений по умолчанию. Этот аргумент фактически удалит все текущие утверждения конфигурации на удалённом устройстве.

Варианты:

  • false ← (по умолчанию)
  • true

Примечания

Примечание

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

Примеры

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

- name: load configure lines into device
  junipernetworks.junos.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
  junipernetworks.junos.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
  junipernetworks.junos.junos_config:
    check_commit: true

- name: rollback the configuration to id 10
  junipernetworks.junos.junos_config:
    rollback: 10

- name: zero out the current configuration
  junipernetworks.junos.junos_config:
    zeroize: true

- name: Set VLAN access and trunking
  junipernetworks.junos.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
  junipernetworks.junos.junos_config:
    confirm_commit: true

- name: for idempotency, use full-form commands
  junipernetworks.junos.junos_config:
    lines:
      - set interfaces ge-0/0/1 unit 0 description "Test interface"

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

- name: Set description with timer to confirm commit
  junipernetworks.junos.junos_config:
    lines:
      - set interfaces fxp0 description "wait for a commit confirmation for 3 minutes; otherwise, it will be rolled back."
    confirm: 3

- name: Perform confirm commit
  junipernetworks.junos.junos_config:
    confirm_commit: true

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

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

Ключ

Описание

backup_path

string

Полный путь к резервной копии

Возвращаемое значение: когда backup = true

Пример: "/playbooks/ansible/backup/config.2016-07-16@22:28:34"

date

string

Дата, извлечённая из имени резервной копии

Возвращаемое значение: когда backup = true

Пример: "2016-07-16"

filename

string

Имя файла резервной копии

Возвращаемое значение: когда backup = true и имя файла не указано в параметрах резервной копии

Пример: "junos01_config.2016-07-16@22:28:34"

shortname

string

Полный путь к резервной копии без временной метки

Возвращаемое значение: когда backup = true и имя файла не указано в параметрах резервной копии

Пример: "/playbooks/ansible/backup/junos01_config"

time

string

Время, извлечённое из имени файла резервной копии

Возвращаемое значение: когда backup = true

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

Авторы

  • Peter Sprygada (@privateip)

Ссылки на сборник

  • Система отслеживания проблем
  • Репозиторий (исходный код)

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/junipernetworks/junos/junos_config_module.html

Spec-Zone.ru

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