Spec-Zone.ru › Ansible

community.network.icx_config модуль – Управление разделами конфигурации коммутаторов Ruckus ICX 7000 серии

Примечание

Этот модуль является частью коллекции community.network (версия 5.0.3).

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

Для установки используйте: ansible-galaxy collection install community.network.

Для использования в плейбуке укажите: community.network.icx_config.

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

Описание

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

Псевдонимы: network.icx.icx_config

Параметры

Параметр

Комментарии

after

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

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

backup

логическое

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

Варианты:

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

before

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

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

defaults

логическое

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

Варианты:

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

diff_against

строка

При использовании аргумента командной строки ansible-playbook --diff модуль может генерировать разницы по отношению к различным источникам.

Когда этот параметр настроен как startup, модуль вернёт разницу между текущей конфигурацией и конфигурацией по умолчанию.

Когда этот параметр настроен как intended, модуль вернёт разницу между текущей конфигурацией и конфигурацией, предоставленной в аргументе intended_config.

Когда этот параметр настроен как running, модуль вернёт разницу до и после текущей конфигурации по отношению к любым внесённым изменениям в конфигурацию устройства.

Варианты:

  • "running"
  • "startup"
  • "intended"

diff_ignore_lines

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

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

intended_config

строка

intended_config предоставляет основную конфигурацию, которой должен соответствовать узел, и используется для проверки окончательной конфигурации running-config. Этот аргумент не будет изменять какие-либо настройки на удалённом устройстве и используется только для проверки соответствия текущей конфигурации устройства. При указании этого аргумента задача также должна изменить значение diff_against и установить его в intended.

строки

псевдонимы: команды

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

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

match

строка

Указывает модулю, как выполнить сопоставление набора команд с текущей конфигурацией устройства. Если match установлено в line, команды сопоставляются по строкам. Если match установлено в strict, строки команд сопоставляются с учётом позиции. Если match установлено в exact, строки команд должны быть идентичными. Наконец, если match установлено в none, модуль не будет пытаться сравнить исходную конфигурацию с текущей конфигурацией удалённого устройства.

Варианты:

  • "line" ← (по умолчанию)
  • "strict"
  • "exact"
  • "none"

multiline_delimiter

строка

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

По умолчанию: "@"

parents

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

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

replace

строка

Указывает модулю способ выполнения конфигурации на устройстве. Если аргумент replace установлен в line, изменённые строки передаются устройству в режиме конфигурации. Если аргумент replace установлен в block, весь блок команд передаётся устройству в режиме конфигурации, если какая-либо строка некорректна.

Варианты:

  • "line" ← (по умолчанию)
  • "block"

running_config

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

строка

По умолчанию модуль подключается к удалённому устройству и получает текущую конфигурацию running-config, чтобы использовать её в качестве основы для сравнения с содержимым источника. Иногда нежелательно получать текущую конфигурацию running-config для каждой задачи в плейбуке. Аргумент running_config позволяет разработчику указать конфигурацию, используемую в качестве базовой конфигурации для сравнения.

save_when

string

При внесении изменений в текущую конфигурацию устройства, по умолчанию эти изменения не копируются в постоянное хранилище. Используя этот аргумент, можно изменить это поведение. Если аргумент установлен в always, то текущая конфигурация всегда копируется в стартовую конфигурацию, а флаг modified всегда устанавливается в True. Если аргумент установлен в modified, то текущая конфигурация копируется в стартовую только в том случае, если она изменилась с момента последней сохранения конфигурации. Если аргумент установлен в never, текущая конфигурация никогда не копируется в конфигурацию. Если аргумент установлен в changed, то текущая конфигурация копируется в конфигурацию только в том случае, если задача внесла изменения.

Варианты:

  • "always"
  • "never" ← (по умолчанию)
  • "modified"
  • "changed"

src

string

Указывает путь к файлу, содержащему конфигурацию или шаблон конфигурации для загрузки. Путь к исходному файлу может быть полным путем на хосте Ansible или относительным путем от корневой директории playbook или роли. Этот аргумент несовместим с аргументами 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: true
    src: "{{ lookup('file', 'config.j2') }}"

Значения возврата

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

Ключ

Описание

backup_path

string

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

Возвращается: при backup=yes

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

commands

list / elements=string

Набор команд, которые будут отправлены на удаленное устройство

Возвращается: всегда

Пример: ["hostname foo", "router ospf 1", "router-id 192.0.2.1"]

updates

list / elements=string

Набор команд, которые будут отправлены на удаленное устройство

Возвращается: всегда

Пример: ["hostname foo", "router ospf 1", "router-id 192.0.2.1"]

Авторы

  • Ruckus Wireless (@Commscope)

Ссылки на коллекцию

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

© 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/community/network/icx_config_module.html

Spec-Zone.ru

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