ce_config — Управление разделами конфигурации Huawei CloudEngine.
Новая версия 2.4.
Обзор
- Конфигурации Huawei CloudEngine используют простой синтаксис с отступами для разделения конфигурации на секции. Этот модуль предоставляет реализацию для работы с секциями конфигурации CloudEngine детерминированным способом. Этот модуль работает с транспортными средствами CLI.
Параметры
| параметр | обязательно | по умолчанию | выбор | комментарии |
|---|---|---|---|---|
| after | нет | Упорядоченный набор команд, которые нужно добавить в конец стека команд, если требуется внести изменения. Так же, как и с before, это позволяет разработчику плейбука добавить набор команд, которые будут выполнены после набора команд. | ||
| backup | нет |
| Этот аргумент заставит модуль создать полную резервную копию текущего current-configuration с удаленного устройства перед внесением каких-либо изменений. Файл резервной копии записывается в папку backup в корневой директории плейбука. Если папка не существует, она создается. | |
| before | нет | Упорядоченный набор команд, которые нужно поместить в стек команд, если требуется внести изменения. Это позволяет разработчику плейбука выполнить команды конфигурации перед внесением каких-либо изменений без влияния на способ сопоставления набора команд с системой. | ||
| config | нет | По умолчанию модуль подключается к удаленному устройству и извлекает текущую конфигурацию, чтобы использовать ее как основу для сравнения с содержимым источника. Иногда нежелательно, чтобы задача получала текущую конфигурацию для каждой задачи в плейбуке. Аргумент config позволяет разработчику передать конфигурацию, которая будет использоваться в качестве базовой конфигурации для сравнения. | ||
| defaults | нет |
| Аргумент defaults повлияет на то, как собирается текущая конфигурация с устройства. При значении true команда, используемая для сбора текущей конфигурации, дополняется словом all. При значении false команда выполняется без слова all. | |
| lines | нет | Упорядоченный набор команд, которые должны быть настроены в разделе. Команды должны быть точно такими же, как и в текущей конфигурации устройства. Обратите внимание на синтаксис команды конфигурации, так как некоторые команды автоматически изменяются анализатором конфигурации устройства. | ||
| match | нет | строка |
| Указывает модулю способ выполнения сопоставления набора команд с текущей конфигурацией устройства. Если match установлен на строка, команды сопоставляются по строкам. Если match установлен на строго, строки команд сопоставляются относительно позиции. Если match установлен на точно, строки команд должны быть точным совпадением. Наконец, если match установлен на ничего, модуль не будет пытаться сравнить исходную конфигурацию с текущей конфигурацией на удаленном устройстве. |
| parents | нет | Упорядоченный набор родительских элементов, которые однозначно идентифицируют раздел, с которым должны быть проверены команды. Если аргумент parents опущен, команды проверяются с набором команд верхнего уровня или глобальных команд. | ||
| replace | нет | строка |
| Указывает модулю способ выполнения конфигурации на устройстве. Если replace установлен на строка, измененные строки передаются устройству в режиме конфигурации. Если replace установлен на блок, весь блок команд передается устройству в режиме конфигурации, если какая-либо строка некорректна. |
| save | нет |
| Аргумент save указывает модулю сохранить текущую конфигурацию в сохраненную конфигурацию. Эта операция выполняется после внесения каких-либо изменений в текущую рабочую конфигурацию. Если изменений не было, конфигурация все равно сохраняется в конфигурацию по умолчанию. Этот параметр всегда заставит модуль вернуть измененный результат. | |
| src | нет | Аргумент src предоставляет путь к файлу конфигурации для загрузки на удаленную систему. Путь может быть полным системным путем к файлу конфигурации, если значение начинается с /, или относительным к корню реализованного роли или плейбука. Этот аргумент несовместим с аргументами lines и parents. |
Примеры
# Note: examples below use the following provider dict to handle
# transport and authentication to the node.
- name: CloudEngine config test
hosts: cloudengine
connection: local
gather_facts: no
vars:
cli:
host: "{{ inventory_hostname }}"
port: "{{ ansible_ssh_port }}"
username: "{{ username }}"
password: "{{ password }}"
transport: cli
tasks:
- name: "Configure top level configuration and save it"
ce_config:
lines: sysname {{ inventory_hostname }}
save: yes
provider: "{{ cli }}"
- name: "Configure acl configuration and save it"
ce_config:
lines:
- rule 10 permit source 1.1.1.1 32
- rule 20 permit source 2.2.2.2 32
- rule 30 permit source 3.3.3.3 32
- rule 40 permit source 4.4.4.4 32
- rule 50 permit source 5.5.5.5 32
parents: acl 2000
before: undo acl 2000
match: exact
provider: "{{ cli }}"
- name: "Configure acl configuration and save it"
ce_config:
lines:
- rule 10 permit source 1.1.1.1 32
- rule 20 permit source 2.2.2.2 32
- rule 30 permit source 3.3.3.3 32
- rule 40 permit source 4.4.4.4 32
parents: acl 2000
before: undo acl 2000
replace: block
provider: "{{ cli }}"
Возвращаемые значения
Общие возвращаемые значения описаны здесь Возвращаемые значения, следующие поля уникальны для данного модуля:
| имя | описание | возвращено | тип | пример |
|---|---|---|---|---|
| backup_path | Полный путь к файлу резервной копии | при backup равно да | строка | /playbooks/ansible/backup/ce_config.2016-07-16@22:28:34 |
| updates | Набор команд, которые будут переданы на удаленное устройство | Только когда lines указано. | список | ['...', '...'] |
Состояние
Этот модуль помечен как предварительный просмотр, что означает, что он не гарантирует обратную совместимость интерфейса.
Для получения помощи в разработке модулей, если вы так захотите, пожалуйста, ознакомьтесь с Информация о сообществе и сотрудничество, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/ce_config_module.html