community.network.aruba_config – Управление секциями конфигурации Aruba
Примечание
Этот плагин входит в коллекцию community.network (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.network.
Для использования в книге задач укажите: community.network.aruba_config.
Обзор
- Конфигурации Aruba используют простой синтаксис вложенных блоков для разделения конфигурации на секции. Этот модуль предоставляет реализацию для работы с секциями конфигурации Aruba детерминированным способом.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| after строка | Упорядоченный набор команд, добавляемых в конец стека команд, если требуется внести изменения. Как и в случае с параметром before, это позволяет разработчику playbook добавить набор команд, которые будут выполнены после набора команд. | ||
| backup логическое значение |
| Этот аргумент заставит модуль создать полную резервную копию текущей running-config с удаленного устройства перед внесением каких-либо изменений. Если значение backup_options не задано, файл резервной копии записывается в папку backup в корневой директории playbook. Если директория не существует, она создается. | |
| backup_options словарь | Это объект типа dict, содержащий настраиваемые параметры, связанные с путем к файлу резервной копии. Значение этого параметра считывается только тогда, когда backup установлено в значение да. Если backup установлено в значение нет, этот параметр будет проигнорирован. | ||
| dir_path путь | Этот параметр задает путь, заканчивающийся именем директории, в которой будет храниться файл конфигурации резервной копии. Если директория не существует, она будет создана, а имя файла будет либо значением filename, либо именем по умолчанию, как описано в параметрах filename. Если значение пути не указано, будет создана директория backup в текущей рабочей директории, и конфигурация резервной копии будет скопирована в filename внутри директории backup. | ||
| filename строка | Имя файла, которое будет использоваться для хранения конфигурации резервной копии. Если имя файла не задано, оно будет сгенерировано на основе имени хоста, текущей даты и времени в формате <имя_хоста>_config.<дата>@<время> | ||
| before строка | Упорядоченный набор команд, которые добавляются в стек команд, если необходимо внести изменения. Это позволяет разработчику playbook выполнить команды конфигурации перед внесением любых изменений, не влияя на то, как набор команд сопоставляется с системой. | ||
| diff_against строка |
| Используя аргумент командной строки ansible-playbook --diff, модуль может генерировать разницы с разными источниками.Если этот параметр настроен как startup, модуль вернет разницу между running-config и startup-config. Если этот параметр настроен как intended, модуль вернет разницу между running-config и конфигурацией, предоставленной в аргументе intended_config.Если этот параметр настроен как running, модуль вернет разницу до и после running-config по отношению к любым изменениям, внесенным в конфигурацию устройства. | |
| diff_ignore_lines строка | Используйте этот аргумент, чтобы указать одну или несколько строк, которые следует игнорировать при сравнении. Это используется для строк в конфигурации, которые автоматически обновляются системой. Этот аргумент принимает список регулярных выражений или точных совпадений строк. | ||
| encrypt логическое значение |
| Это позволяет отображать пароли и ключи контроллера Aruba в открытом виде, если установлено значение false, или зашифрованными, если установлено значение true. Если установлено false, настройка будет зашифрована в конце выполнения модуля. Резервные копии по-прежнему зашифрованы, даже если установлено значение false. | |
| intended_config строка | intended_config предоставляет основную конфигурацию, которой должен соответствовать узел, и используется для проверки окончательной running-config. Этот аргумент не будет изменять какие-либо настройки на удаленном устройстве и строго используется для проверки соответствия текущей конфигурации устройства. При указании этого аргумента задача также должна изменить значение diff_against и установить его в значение intended. | ||
| lines строка | Упорядоченный набор команд, которые должны быть настроены в разделе. Команды должны быть точно такими же, как найдены в running-config устройства. Обратите внимание на синтаксис команд конфигурации, поскольку некоторые команды автоматически изменяются парсером конфигурации устройства. псевдонимы: команды | ||
| match строка |
| Указывает модулю, как выполнять сопоставление набора команд с текущей конфигурацией устройства. Если match установлен на строка, команды сопоставляются построчно. Если match установлен на строгий, строки команд сопоставляются относительно позиции. Если match установлен на точный, строки команд должны точно совпадать. Наконец, если match установлен на нет, модуль не будет пытаться сравнить исходную конфигурацию с текущей конфигурацией на удаленном устройстве. | |
| parents строка | Упорядоченный набор родительских элементов, которые однозначно идентифицируют раздел или иерархию, с которыми должны сравниваться команды. Если аргумент parents опущен, команды проверяются по отношению к набору команд верхнего уровня или глобальных команд. | ||
| provider строка | Объект типа dict, содержащий данные подключения. | ||
| host строка / обязательно | Указывает имя хоста DNS или адрес для подключения к удаленному устройству по указанному каналу. Значение host используется в качестве адреса назначения для канала. | ||
| password строка | Указывает пароль для аутентификации подключения к удаленному устройству. Это значение используется для аутентификации сессии SSH. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения ANSIBLE_NET_PASSWORD. | ||
| port целое число | Значение по умолчанию: 22 | Указывает порт для подключения к удаленному устройству. | |
| ssh_keyfile путь | Указывает SSH-ключ для аутентификации подключения к удаленному устройству. Это значение — путь к ключу, используемому для аутентификации сессии SSH. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения ANSIBLE_NET_SSH_KEYFILE. | ||
| timeout целое число | Значение по умолчанию: 10 | Указывает таймаут в секундах для связи с сетевым устройством при подключении или отправке команд. Если таймаут истек до завершения операции, модуль вернет ошибку. | |
| username строка | Задает имя пользователя для аутентификации подключения к удаленному устройству. Это значение используется для аутентификации сессии SSH. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения ANSIBLE_NET_USERNAME. | ||
| replace строка |
| Указывает модулю способ выполнения конфигурации на устройстве. Если аргумент replace установлен на строка, измененные строки отправляются устройству в режиме конфигурации. Если аргумент replace установлен на блок, весь блок команды отправляется устройству в режиме конфигурации, если какая-либо строка неверна. | |
| running_config строка | Модуль по умолчанию подключается к удаленному устройству и извлекает текущую running-config, чтобы использовать её в качестве основы для сравнения с содержимым источника. Бывают ситуации, когда нежелательно получать текущую running-config для каждой задачи в playbook. Аргумент running_config позволяет разработчику передать конфигурацию, используемую в качестве базовой конфигурации для сравнения. псевдонимы: конфигурация | ||
| save_when строка |
| При внесении изменений в running-config устройства, эти изменения по умолчанию не копируются в постоянную память. С помощью этого аргумента можно изменить это поведение. Если аргумент установлен на всегда, то running-config всегда будет скопирована в startup-config и флаг изменено всегда будет установлен в True. Если аргумент установлен на изменено, то running-config будет скопирована в startup-config только если она изменилась с момента последнего сохранения в startup-config. Если аргумент установлен на никогда, то running-config никогда не будет скопирована в startup-config. Если аргумент установлен на изменено, то running-config будет скопирована в startup-config только если в задаче были внесены изменения. | |
| src строка | Указывает путь к файлу, содержащему конфигурацию или шаблон конфигурации для загрузки. Путь к исходному файлу может быть полным путем на хосте Ansible или относительным путем от корневой директории playbook или роли. Этот аргумент взаимоисключающий с lines и parents. | ||
Примеры
- name: Configure top level configuration
community.network.aruba_config:
lines: hostname {{ inventory_hostname }}
- name: Diff the running-config against a provided config
community.network.aruba_config:
diff_against: intended
intended_config: "{{ lookup('file', 'master.cfg') }}"
- name: Configure interface settings
community.network.aruba_config:
lines:
- description test interface
- ip access-group 1 in
parents: interface gigabitethernet 0/0/0
- name: Load new acl into device
community.network.aruba_config:
lines:
- permit host 10.10.10.10
- ipv6 permit host fda9:97d6:32a3:3e59::3333
parents: ip access-list standard 1
before: no ip access-list standard 1
match: exact
- name: Configurable backup path
community.network.aruba_config:
backup: yes
lines: hostname {{ inventory_hostname }}
backup_options:
filename: backup.cfg
dir_path: /home/user
Значения возврата
Общие значения возврата документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| backup_path строка | при backup равно yes | Полный путь к резервной копии файла Пример: /playbooks/ansible/backup/aruba_config.2016-07-16@22:28:34 |
| commands список / элементы=строка | всегда | Набор команд, которые будут отправлены на удалённое устройство Пример: ['hostname foo', 'vlan 1', 'name default'] |
| updates список / элементы=строка | всегда | Набор команд, которые будут отправлены на удалённое устройство Пример: ['hostname foo', 'vlan 1', 'name default'] |
Авторы
- James Mighion (@jmighion)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/network/aruba_config_module.html