ce_config — Управление разделами конфигурации Huawei CloudEngine.
Новая версия с 2.4.
Обзор
- Конфигурации Huawei CloudEngine используют простой синтаксис файла с отступами для разделения конфигурации на секции. Этот модуль предоставляет реализацию для работы с секциями конфигурации CloudEngine детерминированным способом. Этот модуль работает с транспортом CLI.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| после | По умолчанию: Нет | Упорядоченный набор команд, которые должны быть добавлены в конец стека команд, если требуется изменение. Также как и с перед, это позволяет разработчику плейбука добавить набор команд, которые будут выполнены после набора команд. |
| резервная копия |
| Этот аргумент заставит модуль создать полную резервную копию текущей current-configuration с удаленного устройства перед внесением любых изменений. Файл резервной копии записывается в папку backup в корневой директории плейбука. Если директория не существует, она создается. |
| перед | По умолчанию: Нет | Упорядоченный набор команд, которые будут добавлены в стек команд, если необходимо внести изменения. Это позволяет разработчику плейбука выполнить команды конфигурации до добавления любых изменений, не влияя на то, как набор команд сопоставляется с системой. |
| конфигурация | По умолчанию: Нет | Модуль по умолчанию подключается к удаленному устройству и получает текущую текущую конфигурацию, чтобы использовать её в качестве основы для сравнения с содержимым исходника. Иногда нежелательно, чтобы задача получала текущую конфигурацию для каждой задачи в плейбуке. Аргумент конфигурация позволяет реализатору передать конфигурацию, используемую в качестве базовой конфигурации для сравнения. |
| значения по умолчанию |
| Аргумент значения по умолчанию повлияет на то, как собирается текущая конфигурация с устройства. Когда значение установлено в true, к команде для получения текущей конфигурации добавляется ключевое слово all. Когда значение установлено в false, команда выполняется без ключевого слова all. |
| строки | По умолчанию: Нет | Упорядоченный набор команд, которые должны быть сконфигурированы в секции. Команды должны быть точно такими же, как и в текущей конфигурации устройства. Обратите внимание на синтаксис команд конфигурации, так как некоторые команды автоматически изменяются парсером конфигурации устройства. |
| сопоставление |
| Указывает модулю, как выполнять сопоставление набора команд с текущей конфигурацией устройства. Если match установлено на строка, команды сопоставляются по строкам. Если match установлено на строгое, строки команд сопоставляются с учётом позиции. Если match установлено на точное, строки команд должны точно совпадать. Наконец, если match установлено на нет, модуль не будет пытаться сравнить исходную конфигурацию с текущей конфигурацией на удалённом устройстве. |
| родители | По умолчанию: Нет | Упорядоченный набор родителей, которые однозначно идентифицируют секцию или иерархию, с которой должны сравниваться команды. Если аргумент родителей опущен, команды сравниваются с набором команд верхнего уровня или глобальных команд. |
| замена |
| Указывает модулю, как выполнять конфигурацию на устройстве. Если аргумент replace установлен на строка, изменённые строки отправляются на устройство в режиме конфигурации. Если аргумент replace установлен на блок, весь блок команд отправляется на устройство в режиме конфигурации, если какая-либо строка неверна. |
| сохранить |
| Аргумент сохранить инструктирует модуль сохранить текущую конфигурацию в сохранённую конфигурацию. Эта операция выполняется после внесения любых изменений в текущую рабочую конфигурацию. Если изменений не было, конфигурация всё равно сохраняется в стартовой конфигурации. Этот параметр всегда заставит модуль вернуть изменённое значение. |
| src | По умолчанию: Нет | Аргумент src предоставляет путь к файлу конфигурации, который необходимо загрузить в удалённую систему. Путь может быть полным системным путём к файлу конфигурации, если значение начинается с /, или относительным к корню реализованной роли или плейбука. Этот аргумент взаимоисключает аргументы строки и родители. |
Примеры
# 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 строка | при резервной копии да | Полный путь к файлу резервной копии Пример: /playbooks/ansible/backup/ce_config.2016-07-16@22:28:34 |
| updates список | Только когда указаны строки. | Набор команд, которые будут отправлены на удалённое устройство Пример: ['...', '...'] |
Статус
Этот модуль помечен как предварительный, что означает, что его интерфейс не гарантирует обратную совместимость.
Автор
- QijunPan (@CloudEngine-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.5/modules/ce_config_module.html