community.network.ce_evpn_bd_vni – Управляет идентификатором сети EVPN VXLAN (VNI) на коммутаторах HUAWEI CloudEngine.
Примечание
Этот плагин входит в коллекцию community.network (версия 2.0.1).
Для его установки используйте: ansible-galaxy collection install community.network.
Для использования в плейбуке укажите: community.network.ce_evpn_bd_vni.
Обзор
- Управляет конфигурациями идентификаторов сети VXLAN Ethernet Virtual Private Network (EVPN) на коммутаторах HUAWEI CloudEngine.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| bridge_domain_id строка / обязательно | Укажите существующий мост домен (BD). Значение — целое число от 1 до 16777215. | |
| evpn строка |
| Создать или удалить экземпляр EVPN для VXLAN в представлении BD. |
| route_distinguisher строка | Настраивает различающий маршрут (RD) для экземпляра BD EVPN. Формат RD может быть следующим 1) 2-байтовый номер AS: 4-байтовое пользовательское число, например, 1:3. Номер AS — целое число от 0 до 65535, а пользовательское число — целое число от 0 до 4294967295. Номера AS и пользовательского числа не могут быть одновременно нулями. Это означает, что RD не может быть 0:0. 2) Целое 4-байтовое число AS: 2-байтовое пользовательское число, например, 65537:3. Номер AS — целое число от 65536 до 4294967295, а пользовательское число — целое число от 0 до 65535. 3) 4-байтовое число AS в точечной нотации: 2-байтовое пользовательское число, например, 0.0:3 или 0.1:0. 4-байтовое число AS в точечной нотации имеет формат x.y, где x и y — целые числа от 0 до 65535. 4) Пользовательское число — целое число от 0 до 65535. Номера AS и пользовательского числа не могут быть одновременно нулями. Это означает, что RD не может быть 0.0:0. 5) 32-битный IP-адрес: 2-байтовое пользовательское число. Например, 192.168.122.15:1. IP-адрес находится в диапазоне от 0.0.0.0 до 255.255.255.255, а пользовательское число — целое число от 0 до 65535. 6) 'auto' указывает автоматически сгенерированный RD. | |
| state строка |
| Управление состоянием ресурса. |
| vpn_target_both строка | Добавление VPN-целей в списки импорта и экспорта VPN-целей экземпляра BD EVPN. Формат такой же, как у route_distinguisher. | |
| vpn_target_export строка | Добавление VPN-целей в список экспорта VPN-целей экземпляра BD EVPN. Формат такой же, как у route_distinguisher. | |
| vpn_target_import строка / обязательно | Добавление VPN-целей в список импорта VPN-целей экземпляра BD EVPN. Формат такой же, как у route_distinguisher. |
Примечания
Примечание
- Убедитесь, что EVPN настроен в качестве управляющего плана VXLAN, когда состояние present.
- Убедитесь, что мост домен (BD) существует, когда состояние present.
- Убедитесь, что VNI был создан и связан с областью широковещательной передачи (BD), когда состояние present.
- Если вы настраиваете evpn:false для удаления экземпляра EVPN, все конфигурации в экземпляре EVPN будут удалены.
- После создания экземпляра EVPN в представлении BD вы можете настроить RD, используя параметр route_distinguisher в представлении экземпляра BD-EVPN.
- Перед настройкой VPN-целей для экземпляра BD EVPN убедитесь, что для экземпляра BD EVPN настроен RD.
- Если вы удалите route_distinguisher, все атрибуты VPN-целей для экземпляра BD EVPN будут удалены одновременно.
- При использовании state:absent, evpn не поддерживается и будет проигнорирован.
- При использовании state:absent для удаления атрибутов VPN-целей убедитесь, что конфигурация атрибутов VPN-целей существует, в противном случае будет сообщено об ошибке.
- Для этого модуля требуется, чтобы служба netconf системы была включена на удалённом управляемом устройстве.
- Рекомендуемое соединение:
netconf. - Этот модуль также работает с
localподключениями для устаревших плейбуков.
Примеры
- name: EVPN BD VNI 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 an EVPN instance for a VXLAN in BD view"
community.network.ce_evpn_bd_vni:
bridge_domain_id: 20
evpn: enable
provider: "{{ cli }}"
- name: "Configure a route distinguisher (RD) for a BD EVPN instance"
community.network.ce_evpn_bd_vni:
bridge_domain_id: 20
route_distinguisher: '22:22'
provider: "{{ cli }}"
- name: "Configure VPN targets to both the import and export VPN target lists of a BD EVPN instance"
community.network.ce_evpn_bd_vni:
bridge_domain_id: 20
vpn_target_both: 22:100,22:101
provider: "{{ cli }}"
- name: "Configure VPN targets to the import VPN target list of a BD EVPN instance"
community.network.ce_evpn_bd_vni:
bridge_domain_id: 20
vpn_target_import: 22:22,22:23
provider: "{{ cli }}"
- name: "Configure VPN targets to the export VPN target list of a BD EVPN instance"
community.network.ce_evpn_bd_vni:
bridge_domain_id: 20
vpn_target_export: 22:38,22:39
provider: "{{ cli }}"
- name: "Unconfigure VPN targets to both the import and export VPN target lists of a BD EVPN instance"
community.network.ce_evpn_bd_vni:
bridge_domain_id: 20
vpn_target_both: '22:100'
state: absent
provider: "{{ cli }}"
- name: "Unconfigure VPN targets to the import VPN target list of a BD EVPN instance"
community.network.ce_evpn_bd_vni:
bridge_domain_id: 20
vpn_target_import: '22:22'
state: absent
provider: "{{ cli }}"
- name: "Unconfigure VPN targets to the export VPN target list of a BD EVPN instance"
community.network.ce_evpn_bd_vni:
bridge_domain_id: 20
vpn_target_export: '22:38'
state: absent
provider: "{{ cli }}"
- name: "Unconfigure a route distinguisher (RD) of a BD EVPN instance"
community.network.ce_evpn_bd_vni:
bridge_domain_id: 20
route_distinguisher: '22:22'
state: absent
provider: "{{ cli }}"
- name: "Unconfigure an EVPN instance for a VXLAN in BD view"
community.network.ce_evpn_bd_vni:
bridge_domain_id: 20
evpn: disable
provider: "{{ cli }}"
Возвращаемые значения
Общие возвращаемые значения описаны в здесь, ниже приведены поля, уникальные для этого модуля:
| Ключ | Возвращённое значение | Описание |
|---|---|---|
| changed логическое | всегда | проверка изменения на устройстве Пример: True |
| end_state словарь | всегда | пара k/v конечных атрибутов на устройстве Пример: {'bridge_domain_id': '2', 'evpn': 'enable', 'route_distinguisher': '22:22', 'vpn_target_both': ['22:100', '22:101'], 'vpn_target_export': ['22:38', '22:39'], 'vpn_target_import': ['22:22', '22:23']} |
| existing словарь | всегда | пара k/v существующих атрибутов на устройстве Пример: {'bridge_domain_id': '2', 'evpn': 'disable', 'route_distinguisher': None, 'vpn_target_both': [], 'vpn_target_export': [], 'vpn_target_import': []} |
| proposed словарь | всегда | пара k/v параметров, переданных в модуль Пример: {'bridge_domain_id': '2', 'evpn': 'enable', 'route_distinguisher': '22:22', 'state': 'present', 'vpn_target_both': ['22:100', '22:101'], 'vpn_target_export': ['22:38', '22:39'], 'vpn_target_import': ['22:22', '22:23']} |
| updates список / элементы=строка | всегда | список команд, отправленных на устройство Пример: ['bridge-domain 2', ' evpn', ' route-distinguisher 22:22', ' vpn-target 22:38 export-extcommunity', ' vpn-target 22:39 export-extcommunity', ' vpn-target 22:100 export-extcommunity', ' vpn-target 22:101 export-extcommunity', ' vpn-target 22:22 import-extcommunity', ' vpn-target 22:23 import-extcommunity', ' vpn-target 22:100 import-extcommunity', ' vpn-target 22:101 import-extcommunity'] |
Авторы
- Zhijin Zhou (@QijunPan)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/network/ce_evpn_bd_vni_module.html