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 строка |
| При использовании аргумента 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 строка |
| Настраивает транспортное соединение, используемое при подключении к удалённому устройству. | |
| 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