community.network.opx_cps – Операции CPS на сетевом устройстве с OpenSwitch (OPX)
Примечание
Этот плагин входит в коллекцию community.network (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.network.
Для использования в плейбуке укажите: community.network.opx_cps.
Обзор
- Выполняет заданную операцию над объектом YANG, используя API CPS в сетевом устройстве с OpenSwitch (OPX). Использует модели YANG, предоставленные в https://github.com/open-switch/opx-base-model.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- cps
- cps_object
- cps_utils
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| attr_data строка | Путь к атрибуту YANG и соответствующие данные. | |
| attr_type строка | Тип атрибута YANG. | |
| commit_event логическое значение |
| Попытка принудительного запуска события автоматической фиксации для указанного объекта yang. |
| db логическое значение |
| Запрос/запись указанного пути yang из/в базу данных. |
| module_name строка | Путь YANG для настройки. | |
| operation строка |
| Операция, которая должна быть выполнена над объектом. |
| qualifier строка |
| Квалификатор определяет тип данных объекта, который нужно получить или обработать. |
Примеры
- name: Create VLAN
community.network.opx_cps:
module_name: "dell-base-if-cmn/if/interfaces/interface"
attr_data: {
"base-if-vlan/if/interfaces/interface/id": 230,
"if/interfaces/interface/name": "br230",
"if/interfaces/interface/type": "ianaift:l2vlan"
}
operation: "create"
- name: Get VLAN
community.network.opx_cps:
module_name: "dell-base-if-cmn/if/interfaces/interface"
attr_data: {
"if/interfaces/interface/name": "br230",
}
operation: "get"
- name: Modify some attributes in VLAN
community.network.opx_cps:
module_name: "dell-base-if-cmn/if/interfaces/interface"
attr_data: {
"cps/key_data":
{ "if/interfaces/interface/name": "br230" },
"dell-if/if/interfaces/interface/untagged-ports": ["e101-008-0"],
}
operation: "set"
- name: Delete VLAN
community.network.opx_cps:
module_name: "dell-base-if-cmn/if/interfaces/interface"
attr_data: {
"if/interfaces/interface/name": "br230",
}
operation: "delete"
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| commit_event логическое значение | если commit_event установлено в True в параметрах модуля | Указывает, установлено ли событие автоматической фиксации Пример: True |
| cps_curr_config словарь | при операциях CPS, установка, удаление | Возвращает результат CPS Get, т.е. текущую конфигурацию до выполнения операции CPS set/delete Пример: [{'data': {'base-if-vlan/if/interfaces/interface/id': 230, 'cps/key_data': {'if/interfaces/interface/name': 'br230'}, 'dell-base-if-cmn/if/interfaces/interface/if-index': 44, 'dell-if/if/interfaces/interface/learning-mode': 1, 'dell-if/if/interfaces/interface/mtu': 1532, 'dell-if/if/interfaces/interface/phys-address': '', 'dell-if/if/interfaces/interface/vlan-type': 1, 'if/interfaces/interface/enabled': 0, 'if/interfaces/interface/type': 'ianaift:l2vlan'}, 'key': 'target/dell-base-if-cmn/if/interfaces/interface'}] |
| db логическое значение | если db установлено в True в параметрах модуля | Указывает, выполнена ли транзакция CPS в БД Пример: True |
| diff словарь | при операциях CPS, установка, удаление | Фактическая конфигурация, которая будет применена, сравнивая текущую конфигурацию и входные атрибуты Пример: {'cps/key_data': {'if/interfaces/interface/name': 'br230'}, 'dell-if/if/interfaces/interface/untagged-ports': ['e101-007-0']} |
| response список / элементы=строка | при успешном выполнении транзакции CPS | Вывод от транзакции CPS. Вывод операции CPS Get, если CPS set/create/delete не выполнена. Пример: [{'data': {'base-if-vlan/if/interfaces/interface/id': 230, 'cps/object-group/return-code': 0, 'dell-base-if-cmn/if/interfaces/interface/if-index': 46, 'if/interfaces/interface/name': 'br230', 'if/interfaces/interface/type': 'ianaift:l2vlan'}, 'key': 'target/dell-base-if-cmn/if/interfaces/interface'}] |
Авторы
- Senthil Kumar Ganesan (@skg-net)
© 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/opx_cps_module.html