Spec-Zone.ru › Ansible 2.9

bigip_imish_config – Управление разделами расширенной конфигурации маршрутизации BIG-IP

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

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

Обзор

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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
after
список
Упорядоченный набор команд для добавления в конец стека команд, если необходимо внести изменения.
Точно так же, как и с параметром before, это позволяет разработчику плейбука добавить набор команд, которые будут выполнены после набора команд.
backup
логическое значение
    Варианты:
  • нет ←
  • да
Этот аргумент заставит модуль создать полную резервную копию текущей running-config с удалённого устройства перед внесением каких-либо изменений.
Файл резервной копии записывается в папку backup в корневом каталоге плейбука или в корневом каталоге роли, если плейбук является частью роли ansible. Если папка не существует, она создаётся.
backup_options
словарь
добавлен в 2.8
Это объект типа dict, содержащий настраиваемые параметры, связанные с путём к файлу резервной копии. Значение этого параметра считывается только тогда, когда backup установлено в да; если backup установлено в нет, этот параметр будет проигнорирован.
dir_path
путь
Этот параметр предоставляет путь, заканчивающийся именем каталога, в котором будет храниться конфигурационный файл резервной копии. Если каталог не существует, он сначала создаётся, а имя файла — это либо значение filename, либо имя файла по умолчанию, как описано в filename описании параметров. Если путь не задан, в этом случае в текущем рабочем каталоге будет создан каталог backup, а конфигурация резервной копии будет скопирована в filename в каталоге backup.
filename
строка
Имя файла, используемого для хранения конфигурации резервной копии. Если имя файла не указано, оно генерируется на основе имени хоста, текущего времени и даты в формате <имя_хоста>_config.<дата>@<время>
before
список
Упорядоченный набор команд, которые должны быть добавлены в стек команд, если необходимо внести изменения.
Это даёт разработчику плейбука возможность выполнить конфигурационные команды до внесения любых изменений без влияния на соответствие набора команд системе.
diff_against
строка
    Варианты:
  • startup ←
  • intended
  • running
При использовании аргумента ansible-playbook --diff командной строки модуль может генерировать разницы относительно разных источников.
Когда этот параметр настроен как startup, модуль вернёт разницу между текущей и начальной конфигурацией.
Когда этот параметр настроен как intended, модуль вернёт разницу между текущей и целевой конфигурацией, заданной в аргументе intended_config.
Когда этот параметр настроен как running, модуль вернёт разницу между текущей и предыдущей конфигурацией с учётом всех изменений, внесённых в конфигурацию устройства.
diff_ignore_lines
список
Используйте этот аргумент, чтобы указать одну или несколько строк, которые должны быть проигнорированы при сравнении.
Это используется для строк в конфигурации, которые автоматически обновляются системой.
Этот аргумент принимает список регулярных выражений или точных совпадений строк.
intended_config
строка
intended_config предоставляет основную конфигурацию, которой должен соответствовать узел, и используется для проверки конечной текущей конфигурации.
Этот аргумент не будет изменять какие-либо настройки на удалённом устройстве и используется исключительно для проверки соответствия текущей конфигурации устройства.
При указании этого аргумента задача также должна изменить значение diff_against и установить его в intended.
lines
список
Упорядоченный набор команд, которые должны быть настроены в данном разделе.
Команды должны быть идентичными командам, найденным в текущей конфигурации устройства.
Обратите внимание на синтаксис команд конфигурации, так как некоторые команды автоматически изменяются парсером конфигурации устройства.

псевдонимы: команды
match
строка
    Варианты:
  • строка ←
  • строгое
  • точное
  • ничего
Указывает модулю, как выполнять сопоставление набора команд с текущей конфигурацией устройства.
Если match установлено в строка, команды сопоставляются по строкам.
Если match установлено в строгое, строки команд сопоставляются относительно позиции.
Если match установлено в точное, строки команд должны быть точными совпадениями.
И, наконец, если match установлено в ничего, модуль не будет пытаться сравнить исходную конфигурацию с текущей конфигурацией удалённого устройства.
parents
список
Упорядоченный набор родительских элементов, которые однозначно идентифицируют раздел или иерархию, с которой должны сравниваться команды.
Если аргумент parents опущен, команды проверяются относительно набора команд верхнего уровня или глобальных команд.
provider
словарь
добавлен в 2.5
Объект типа dict, содержащий данные соединения.
auth_provider
строка
Настраивает поставщик аутентификации для получения маркеров аутентификации с удалённого устройства.
Этот параметр действительно используется при работе с устройствами BIG-IQ.
password
строка / обязательно
Пароль для учётной записи пользователя, используемой для подключения к BIG-IP.
Этот параметр можно опустить, установив переменную среды F5_PASSWORD.

псевдонимы: pass, pwd
server
строка / обязательно
Хост BIG-IP.
Этот параметр можно опустить, установив переменную среды F5_SERVER.
server_port
целое число
По умолчанию:
443
Порт сервера BIG-IP.
Этот параметр можно опустить, установив переменную среды F5_SERVER_PORT.
ssh_keyfile
путь
Указывает файл SSH-ключа, который будет использоваться для аутентификации подключения к удалённому устройству. Этот аргумент используется только для транспортов cli.
Этот параметр можно опустить, установив переменную среды ANSIBLE_NET_SSH_KEYFILE.
timeout
целое число
Указывает время ожидания в секундах для связи с сетевым устройством при подключении или отправке команд. Если время ожидания истечёт до завершения операции, модуль выдаст ошибку.
transport
строка
    Варианты:
  • cli
  • rest ←
Настраивает транспортное соединение, используемое при подключении к удалённому устройству.
user
строка / обязательно
Имя пользователя для подключения к BIG-IP. У этого пользователя должны быть административные права на устройстве.
Этот параметр можно опустить, установив переменную среды F5_USER.
validate_certs
логическое значение
    Варианты:
  • нет
  • да ←
Если no, сертификаты SSL не проверяются. Используйте это только на сайтах, которыми вы управляете лично, и использующих самоподписанные сертификаты.
Этот параметр можно опустить, установив переменную среды F5_VALIDATE_CERTS.
заменить
строка
    Варианты:
  • строка ←
  • блок
Указывает модулю способ выполнения конфигурации на устройстве.
Если аргумент replace установлен в строка, то измененные строки отправляются на устройство в режиме конфигурации.
Если аргумент replace установлен в блок, то весь блок команды отправляется на устройство в режиме конфигурации, если какая-либо строка некорректна.
route_domain
строка
По умолчанию:
0
Домен маршрутизации для управления конфигурацией BGP.
running_config
строка
По умолчанию, модуль подключается к удалённому устройству и получает текущую конфигурацию running-config для сравнения с содержимым источника.
Иногда нежелательно, чтобы задача получала текущую конфигурацию running-config для каждой задачи в плейбуке.
Аргумент running_config позволяет разработчику передать конфигурацию для использования в качестве базовой конфигурации сравнения.

алиасы: config
save_when
строка
    Варианты:
  • всегда
  • никогда ←
  • изменён
  • изменился
При внесении изменений в текущую конфигурацию устройства, изменения по умолчанию не копируются в энергонезависимую память.
Если аргумент установлен в всегда, то running-config всегда будет скопирована в startup-config, а флаг изменён всегда будет установлен в True.
Если аргумент установлен в изменён, то running-config будет скопирована в startup-config только в случае, если она изменилась с момента последнего сохранения в startup-config.
Если аргумент установлен в никогда, то running-config никогда не будет скопирована в startup-config.
Если аргумент установлен в изменился, то running-config будет скопирована в startup-config только если задача внесла изменения.
src
путь
Аргумент src предоставляет путь к файлу конфигурации для загрузки на удалённую систему.
Путь может быть полным системным путем к файлу конфигурации, если значение начинается с /, или относительным к корню реализованного роли или плейбука.
Этот аргумент несовместим с аргументами lines и parents.

Примечания

Примечание

  • Сокращенные команды НЕ идемпотентны, см. FAQ по сети.
  • Дополнительную информацию об использовании Ansible для управления устройствами F5 Networks см. на https://www.ansible.com/integrations/networks/f5.
  • Требуется версия ПО BIG-IP >= 12.
  • Модули F5 изменяют только текущую конфигурацию продукта F5. Чтобы убедиться, что BIG-IP-специфическая конфигурация сохранится на диске, необходимо включить как минимум одну задачу, использующую модуль bigip_config для сохранения текущей конфигурации. Обратитесь к документации модуля для правильного использования модуля для сохранения текущей конфигурации.

Примеры

- name: configure top level configuration and save it
  bigip_imish_config:
    lines: bfd slow-timer 2000
    save_when: modified
    provider:
      user: admin
      password: secret
      server: lb.mydomain.com
  delegate_to: localhost

- name: diff the running-config against a provided config
  bigip_imish_config:
    diff_against: intended
    intended_config: "{{ lookup('file', 'master.cfg') }}"
    provider:
      user: admin
      password: secret
      server: lb.mydomain.com
  delegate_to: localhost

- name: Add config to a parent block
  bigip_imish_config:
    lines:
      - bgp graceful-restart restart-time 120
      - redistribute kernel route-map rhi
      - neighbor 10.10.10.11 remote-as 65000
      - neighbor 10.10.10.11 fall-over bfd
      - neighbor 10.10.10.11 remote-as 65000
      - neighbor 10.10.10.11 fall-over bfd
    parents: router bgp 64664
    match: exact
    provider:
      user: admin
      password: secret
      server: lb.mydomain.com
  delegate_to: localhost

- name: Remove an existing acl before writing it
  bigip_imish_config:
    lines:
      - access-list 10 permit 20.20.20.20
      - access-list 10 permit 20.20.20.21
      - access-list 10 deny any
    before: no access-list 10
    provider:
      user: admin
      password: secret
      server: lb.mydomain.com
  delegate_to: localhost

- name: for idempotency, use full-form commands
  bigip_imish_config:
    lines:
      # - desc My interface
      - description My Interface
    # parents: int ANYCAST-P2P-2
    parents: interface ANYCAST-P2P-2
    provider:
      user: admin
      password: secret
      server: lb.mydomain.com
  delegate_to: localhost

- name: configurable backup path
  bigip_imish_config:
    lines: bfd slow-timer 2000
    backup: yes
    provider:
      user: admin
      password: secret
      server: lb.mydomain.com
    backup_options:
      filename: backup.cfg
      dir_path: /home/user
  delegate_to: localhost

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

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

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

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

Пример:
['interface ANYCAST-P2P-2', 'neighbor 20.20.20.21 remote-as 65000', 'neighbor 20.20.20.21 fall-over bfd']
updates
список
всегда
Набор команд, которые будут отправлены на удаленное устройство

Пример:
['interface ANYCAST-P2P-2', 'neighbor 20.20.20.21 remote-as 65000', 'neighbor 20.20.20.21 fall-over bfd']


Статус

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

Авторы

  • Tim Rupp (@caphrim007)

Подсказка

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

© 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/bigip_imish_config_module.html

Spec-Zone.ru

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