Модуль cisco.ios.ios_evpn_evi — модуль ресурсов для настройки L2VPN EVPN EVI.
Примечание
Этот модуль входит в коллекцию cisco.ios (версия 11.4.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install cisco.ios.
Чтобы использовать модуль в плейбуке, укажите: cisco.ios.ios_evpn_evi.
Новое в cisco.ios 5.3.0
Краткое описание
- Этот модуль обеспечивает декларативное управление L2VPN EVPN EVI на сетевых устройствах Cisco IOS.
Псевдонимы: evpn_evi
Параметры
Параметр | Комментарии |
|---|---|
config list / elements=dictionary | Словарь конфигурации EVI сети L2VPN Ethernet Virtual Private Network (EVPN) |
|
default_gateway dictionary |
Параметры шлюза по умолчанию |
|
advertise dictionary |
Анонсировать маршруты MAC/IP шлюза по умолчанию |
|
disable boolean |
Отключить анонсирование маршрутов MAC/IP шлюза по умолчанию Варианты:
|
|
enable boolean |
Включить анонсирование маршрутов MAC/IP шлюза по умолчанию Варианты:
|
|
encapsulation string |
Тип инкапсуляции EVPN Варианты:
|
|
evi integer / обязательный |
Значение экземпляра EVPN |
|
ip dictionary |
Параметры IP |
|
local_learning dictionary |
Локальное обучение IP |
|
disable boolean |
Отключить локальное обучение IP Варианты:
|
|
enable boolean |
Включить локальное обучение IP Варианты:
|
|
replication_type string |
Метод репликации трафика BUM Варианты:
|
|
route_distinguisher string |
Различитель маршрутов EVPN |
running_config string | Этот параметр используется только при состоянии parsed. Значением этого параметра должен быть вывод, полученный с устройства IOS при выполнении команды sh running-config nve | section ^l2vpn evpn$. Состояние parsed считывает конфигурацию из параметра |
state string | Состояние, в котором должна остаться конфигурация Варианты:
|
Примечания
Примечание
- Протестировано на устройстве Cisco IOS-XE с версией 17.13.01 на Cat9k в CML.
- Этот модуль работает с подключением
network_cli. См. https://docs.ansible.com/ansible/latest/network/user_guide/platform_ios.html
Примеры
# Using state merged
# Before state:
# -------------
# l2vpn evpn instance 101 vlan-based
# encapsulation vxlan
# replication-type static
# !
# l2vpn evpn instance 102 vlan-based
# encapsulation vxlan
# replication-type ingress
# !
# l2vpn evpn instance 201 vlan-based
# encapsulation vxlan
# replication-type static
# !
# l2vpn evpn instance 202 vlan-based
# encapsulation vxlan
# replication-type ingress
# - name: Merge provided configuration with device configuration
# cisco.ios.ios_evpn_evi:
# config:
# - evi: 101
# replication_type: ingress
# route_distinguisher: '1:1'
# default_gateway:
# advertise:
# enable: False
# ip:
# local_learning:
# enable: True
#
# - evi: 202
# replication_type: static
# default_gateway:
# advertise:
# enable: True
# ip:
# local_learning:
# disable: True
# state: merged
# Commands Fired:
# ---------------
# "commands": [
# "l2vpn evpn instance 101 vlan-based",
# "ip local-learning enable",
# "replication-type ingress",
# "rd 1:1",
# "l2vpn evpn instance 202 vlan-based",
# "default-gateway advertise enable",
# "ip local-learning disable",
# "replication-type static"
# ],
# After state:
# ------------
# l2vpn evpn instance 101 vlan-based
# encapsulation vxlan
# rd 1:1
# replication-type ingress
# ip local-learning enable
# !
# l2vpn evpn instance 102 vlan-based
# encapsulation vxlan
# replication-type ingress
# !
# l2vpn evpn instance 201 vlan-based
# encapsulation vxlan
# replication-type static
# !
# l2vpn evpn instance 202 vlan-based
# encapsulation vxlan
# replication-type static
# ip local-learning disable
# default-gateway advertise enable
# Using state replaced
# Before state:
# -------------
# l2vpn evpn instance 101 vlan-based
# encapsulation vxlan
# rd 1:1
# replication-type ingress
# ip local-learning enable
# !
# l2vpn evpn instance 102 vlan-based
# encapsulation vxlan
# replication-type ingress
# !
# l2vpn evpn instance 201 vlan-based
# encapsulation vxlan
# replication-type static
# !
# l2vpn evpn instance 202 vlan-based
# encapsulation vxlan
# replication-type static
# ip local-learning disable
# default-gateway advertise enable
# - name: Replaces the device configuration with the provided configuration
# cisco.ios.ios_evpn_evi:
# config:
# - evi: 101
# replication_type: ingress
# default_gateway:
# advertise:
# enable: True
# - evi: 202
# replication_type: ingress
# state: replaced
# Commands Fired:
# ---------------
# "commands": [
# "l2vpn evpn instance 101 vlan-based",
# "default-gateway advertise enable",
# "no ip local-learning enable",
# "no rd 1:1",
# "l2vpn evpn instance 202 vlan-based",
# "no default-gateway advertise enable",
# "no ip local-learning disable",
# "replication-type ingress"
# ],
# After state:
# ------------
# l2vpn evpn instance 101 vlan-based
# encapsulation vxlan
# replication-type ingress
# default-gateway advertise enable
# !
# l2vpn evpn instance 102 vlan-based
# encapsulation vxlan
# replication-type ingress
# !
# l2vpn evpn instance 201 vlan-based
# encapsulation vxlan
# replication-type static
# !
# l2vpn evpn instance 202 vlan-based
# encapsulation vxlan
# replication-type ingress
# Using state overridden
# Before state:
# -------------
# l2vpn evpn instance 101 vlan-based
# encapsulation vxlan
# replication-type ingress
# default-gateway advertise enable
# !
# l2vpn evpn instance 102 vlan-based
# encapsulation vxlan
# replication-type ingress
# !
# l2vpn evpn instance 201 vlan-based
# encapsulation vxlan
# replication-type static
# !
# l2vpn evpn instance 202 vlan-based
# encapsulation vxlan
# replication-type ingress
# - name: Override the device configuration with provided configuration
# cisco.ios.ios_evpn_evi:
# config:
# - evi: 101
# replication_type: ingress
# default_gateway:
# advertise:
# enable: True
# - evi: 202
# replication_type: static
# default_gateway:
# advertise:
# enable: True
# state: overridden
# Commands Fired:
# ---------------
# "commands": [
# "no l2vpn evpn instance 102 vlan-based",
# "no l2vpn evpn instance 201 vlan-based",
# "l2vpn evpn instance 202 vlan-based",
# "default-gateway advertise enable",
# "replication-type static"
# ],
# After state:
# ------------
# l2vpn evpn instance 101 vlan-based
# encapsulation vxlan
# replication-type ingress
# default-gateway advertise enable
# !
# l2vpn evpn instance 202 vlan-based
# encapsulation vxlan
# replication-type static
# default-gateway advertise enable
# Using state Deleted
# Before state:
# -------------
# l2vpn evpn instance 101 vlan-based
# encapsulation vxlan
# replication-type ingress
# default-gateway advertise enable
# l2vpn evpn instance 102 vlan-based
# encapsulation vxlan
# replication-type ingress
# l2vpn evpn instance 202 vlan-based
# encapsulation vxlan
# replication-type static
# default-gateway advertise enable
# - name: "Delete the given EVI(s)"
# cisco.ios.ios_evpn_evi:
# config:
# - evi: 101
# state: deleted
# Commands Fired:
# ---------------
# "commands": [
# "no l2vpn evpn instance 101 vlan-based"
# ],
# After state:
# -------------
# l2vpn evpn instance 102 vlan-based
# encapsulation vxlan
# replication-type ingress
# l2vpn evpn instance 202 vlan-based
# encapsulation vxlan
# replication-type static
# default-gateway advertise enable
# Using state Deleted without any config passed
# Before state:
# -------------
# l2vpn evpn instance 102 vlan-based
# encapsulation vxlan
# replication-type ingress
# l2vpn evpn instance 202 vlan-based
# encapsulation vxlan
# replication-type static
# default-gateway advertise enable
# - name: "Delete ALL EVIs"
# cisco.ios.ios_evpn_evi:
# state: deleted
# Commands Fired:
# ---------------
# "commands": [
# "no l2vpn evpn instance 102 vlan-based",
# "no l2vpn evpn instance 202 vlan-based"
# ],
# After state:
# -------------
# !
# Using gathered
# Before state:
# -------------
#
# l2vpn evpn instance 101 vlan-based
# encapsulation vxlan
# replication-type static
# !
# l2vpn evpn instance 102 vlan-based
# encapsulation vxlan
# replication-type ingress
# !
# l2vpn evpn instance 201 vlan-based
# encapsulation vxlan
# replication-type static
# !
# l2vpn evpn instance 202 vlan-based
# encapsulation vxlan
# replication-type ingress
# - name: Gather facts for evpn_evi
# cisco.ios.ios_evpn_evi:
# config:
# state: gathered
# Task Output:
# ------------
#
# gathered:
# - evi: 101
# encapsulation: vxlan
# replication_type: static
# - evi: 102
# encapsulation: vxlan
# replication_type: ingress
# - evi: 201
# encapsulation: vxlan
# replication_type: static
# - evi: 202
# encapsulation: vxlan
# replication_type: ingress
# Using Rendered
# - name: Rendered the provided configuration with the existing running configuration
# cisco.ios.ios_evpn_evi:
# config:
# - evi: 101
# replication_type: ingress
# default_gateway:
# advertise:
# enable: True
# - evi: 202
# replication_type: ingress
# state: rendered
# Task Output:
# ------------
#
# rendered:
# - l2vpn evpn instance 101 vlan-based
# - default-gateway advertise enable
# - replication-type ingress
# - l2vpn evpn instance 202 vlan-based
# - replication-type ingress
# Using parsed
# File: parsed.cfg
# ----------------
#
# l2vpn evpn instance 101 vlan-based
# encapsulation vxlan
# replication-type ingress
# default-gateway advertise enable
# !
# l2vpn evpn instance 102 vlan-based
# encapsulation vxlan
# replication-type ingress
# !
# - name: Parse the commands for provided configuration
# cisco.ios.ios_evpn_evi:
# running_config: "{{ lookup('file', 'parsed.cfg') }}"
# state: parsed
# Task Output:
# ------------
#
# parsed:
# - evi: 101
# encapsulation: vxlan
# replication_type: ingress
# default_gateway:
# advertise:
# enable: true
# - evi: 102
# encapsulation: vxlan
# replication_type: ingress
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
after dictionary | Итоговая конфигурация после выполнения модуля. Возвращается: если конфигурация изменилась Пример: |
before dictionary | Конфигурация до выполнения модуля. Возвращается: если state имеет значение Пример: |
commands list / elements=string | Набор команд, отправленных на удаленное устройство. Возвращается: если state имеет значение Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/cisco/ios/ios_evpn_evi_module.html