community.network.ce_evpn_bd_vni – Управляет идентификатором сети VXLAN EVPN (VNI) на коммутаторах HUAWEI CloudEngine.
Примечание
Этот плагин входит в коллекцию community.network (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.network.
Для использования в книге задач укажите: community.network.ce_evpn_bd_vni.
Обзор
- Управляет конфигурациями идентификатора сети VXLAN EVPN (VNI) на коммутаторах 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 и пользовательское значение не могут быть одновременно равны 0. Это означает, что 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 и пользовательское значение не могут быть одновременно равны 0. Это означает, что 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, когда state равен present.
- Убедитесь, что домен моста (BD) существует, когда state равен present.
- Убедитесь, что VNI создан и связан с областью широковещательной передачи (BD), когда state равен 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 system была включена на управляемом удалённом устройстве.
- Рекомендуемое соединение —
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 boolean | всегда | проверяет, были ли внесены изменения на устройстве Пример: True |
| end_state словарь | всегда | пара ключ-значение конечных атрибутов на устройстве Пример: {'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 словарь | всегда | пара ключ-значение существующих атрибутов на устройстве Пример: {'bridge_domain_id': '2', 'evpn': 'disable', 'route_distinguisher': None, 'vpn_target_both': [], 'vpn_target_export': [], 'vpn_target_import': []} |
| proposed словарь | всегда | пара ключ-значение параметров, переданных в модуль Пример: {'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–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/network/ce_evpn_bd_vni_module.html