Spec-Zone.ru › Ansible

Модуль cisco.nxos.nxos_vrf_address_family – модуль ресурсов для настройки определений семейств адресов VRF.

Примечание

Этот модуль входит в коллекцию cisco.nxos (версия 11.2.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install cisco.nxos.

Чтобы использовать её в плейбуке, укажите: cisco.nxos.nxos_vrf_address_family.

Новая возможность в cisco.nxos 9.3.0

  • Краткое описание
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Этот модуль обеспечивает декларативное управление определениями VRF на Cisco NXOS.

Примечание

Этому модулю соответствует плагин действий.

Псевдонимы: vrf_address_family

Параметры

Параметр

Комментарии

config

list / elements=dictionary

Список конфигураций устройства для семейства адресов VRF.

address_families

list / elements=dictionary

Включить семейство адресов и перейти в режим его настройки — конфигурация AFI/SAFI

afi

string

Идентификатор семейства адресов (AFI)

Варианты:

  • "ipv4"
  • "ipv6"

export

list / elements=dictionary

Экспорт VRF

map

string

Экспорт VRF на основе карты маршрутизации

vrf

dictionary

Контекст виртуального маршрутизатора

allow_vpn

boolean

Разрешить повторный импорт маршрутов, импортированных из VPN

Варианты:

  • false
  • true

map_import

string

Импорт VRF на основе карты маршрутизации

max_prefix

integer

Максимальный предел префиксов

import

list / elements=dictionary

Импорт VRF

map

string

Экспорт VRF на основе карты маршрутизации

vrf

dictionary

Контекст виртуального маршрутизатора

advertise_vpn

boolean

Разрешить анонс утекших маршрутов в VPN

Варианты:

  • false
  • true

map_import

string

Импорт VRF на основе карты маршрутизации

max_prefix

integer

Максимальный предел префиксов

maximum

dictionary

Задать предел количества маршрутов

max_route_options

dictionary

Настроить параметры максимального количества маршрутов

threshold

dictionary

Настроить пороговое значение и его параметры

reinstall_threshold

integer

Пороговое значение (%), при достижении которого маршруты повторно устанавливаются в VRF

threshold_value

integer

Пороговое значение (%), при достижении которого выводится предупреждение

warning_only

boolean

Настроить вывод только предупреждения при превышении предела

Варианты:

  • false
  • true

max_routes

integer

Максимальное допустимое количество маршрутов

route_target

list / elements=dictionary

Указать расширенные сообщества VPN Target

export

string

Экспорт сообщества Target-VPN

import

string

Импорт сообщества Target-VPN

safi

string

Модификатор семейства адресов

Варианты:

  • "multicast"
  • "unicast"

name

string / обязательный

Имя VRF.

running_config

string

Этот параметр используется только при состоянии parsed.

Значением этого параметра должен быть вывод, полученный с устройства NX-OS при выполнении команды show running-config | section ^vrf.

Состояние parsed считывает конфигурацию из параметра running_config и преобразует её в структурированные данные Ansible согласно спецификации аргументов модуля ресурсов; затем значение возвращается в ключе parsed результата.

state

string

Состояние, в котором должна остаться конфигурация

Состояния rendered, gathered и parsed не вносят изменений на устройстве.

Состояние rendered преобразует конфигурацию из параметра config в специфичные для платформы команды CLI, которые будут возвращены в ключе rendered результата. Для состояния rendered активное подключение к удалённому узлу не требуется.

Состояние gathered получает текущую конфигурацию устройства и преобразует её в структурированные данные в формате, соответствующем спецификации аргументов модуля ресурсов; значение возвращается в ключе gathered результата.

Состояние parsed считывает конфигурацию из параметра running_config и преобразует её в формат JSON согласно параметрам модуля ресурсов; значение возвращается в ключе parsed результата. Значение параметра running_config должно иметь тот же формат, что и вывод команды show running-config | section ^vrf. Подключение к удалённому узлу не требуется.

Варианты:

  • "parsed"
  • "gathered"
  • "deleted"
  • "purged"
  • "merged" ← (по умолчанию)
  • "replaced"
  • "rendered"
  • "overridden"

Примечания

Примечание

  • Проверено на NX-OS 9.3.6.
  • Этот модуль работает с подключениями network_cli и httpapi. См. https://docs.ansible.com/ansible/latest/network/user_guide/platform_nxos.html

Примеры

# Using merged

# Before state:
# -------------
#
# nxos#show running-config | section ^vrf

- name: Merge provided configuration with device configuration
  register: result
  cisco.nxos.nxos_vrf_address_family:
    config:
      - name: VRF1
        address_families:
          - afi: ipv4
            safi: unicast
            route_target:
              - export: "65512:200"
            maximum:
              max_routes: 500
              max_route_options:
                threshold:
                  threshold_value: 60
                  reinstall_threshold: 80
            export:
              - map: "22"
              - vrf:
                  allow_vpn: true
                  map_import: "44"
              - vrf:
                  allow_vpn: true
          - afi: ipv6
            safi: unicast
            maximum:
              max_routes: 1000
            route_target:
              - import: "65512:200"
            import:
              - map: "22"
              - vrf:
                  advertise_vpn: true
                  map_import: "44"
              - vrf:
                  advertise_vpn: true
    state: merged

# Task Output:
# ------------

# before: {}
# commands:
#   - vrf context VRF1
#   - address-family ipv4 unicast
#   - maximum routes 500 60 reinstall 80
#   - route-target export 65512:200
#   - export map 22
#   - export vrf default map 44 allow-vpn
#   - export vrf allow-vpn
#   - address-family ipv6 unicast
#   - maximum routes 1000
#   - route-target import 65512:200
#   - import map 22
#   - import vrf default map 44 advertise-vpn
#   - import vrf advertise-vpn
# after:
#   - address_families:
#       - afi: ipv4
#         export:
#           - map: "22"
#           - vrf:
#               allow_vpn: true
#               map_import: "44"
#           - vrf:
#               allow_vpn: true
#         maximum:
#           max_route_options:
#             threshold:
#               reinstall_threshold: 80
#               threshold_value: 60
#           max_routes: 500
#         route_target:
#           - export: 65512:200
#         safi: unicast
#       - afi: ipv6
#         import:
#           - map: "22"
#           - vrf:
#               advertise_vpn: true
#               map_import: "44"
#           - vrf:
#               advertise_vpn: true
#         maximum:
#           max_routes: 1000
#         route_target:
#           - import: 65512:200
#         safi: unicast
#     name: VRF1

# After state:
# ------------
#
# nxos#show running-config | section ^vrf
# vrf context VRF1
#   address-family ipv4 unicast
#     route-target export 65512:200
#     export map 22
#     export vrf default map 44 allow-vpn
#     export vrf allow-vpn
#     maximum routes 500 60 reinstall 80
#   address-family ipv6 unicast
#     route-target import 65512:200
#     import map 22
#     import vrf default map 44 advertise-vpn
#     import vrf advertise-vpn
#     maximum routes 1000

# Using deleted

# Before state:
# -------------
#
# nxos#show running-config | section ^vrf
# vrf context VRF1
#   address-family ipv4 unicast
#      route-target import 64512:200
#      route-target export 64512:200
#      export map 22
#      export vrf default map 44 allow-vpn
#      export vrf allow-vpn
#      maximum routes 900 22 reinstall 44

- name: Delete given vrf address family configuration
  register: result
  cisco.nxos.nxos_vrf_address_family:
    config:
      - name: VRF1
        address_families:
          - afi: ipv4
            safi: unicast
            route_target:
              - import: 64512:200
            export:
              - map: "22"
            maximum:
              max_routes: 900
              max_route_options:
                threshold:
                  threshold_value: 22
                  reinstall_threshold: 44
    state: deleted

# Task Output:
# ------------
#
# before:
#  - address_families:
#      - afi: ipv4
#        export:
#          - map: "22"
#          - vrf:
#              allow_vpn: true
#              map_import: "44"
#          - vrf:
#              allow_vpn: true
#        maximum:
#          max_route_options:
#            threshold:
#              reinstall_threshold: 44
#              threshold_value: 22
#          max_routes: 900
#        route_target:
#          - import: "64512:200"
#          - export: "64512:200"
#        safi: unicast
#    name: VRF1

# commands:
#   - vrf context VRF1
#   - address-family ipv4 unicast
#   - no maximum routes 900 22 reinstall 44
#   - no route-target import 64512:200
#   - no export map 22
# after:
#   - address_families:
#       - afi: ipv4
#         export:
#           - vrf:
#               allow_vpn: true
#               map_import: "44"
#           - vrf:
#               allow_vpn: true
#         route_target:
#           - export: "64512:200"
#         safi: unicast
#     name: VRF1

# Using purged

# Before state:
# -------------
#
# nxos#show running-config | section ^vrf
# vrf context VRF1
#   address-family ipv4 unicast
#     route-target export 65512:200
#     export map 22
#     export vrf default map 44 allow-vpn
#     export vrf allow-vpn
#     maximum routes 500 60 reinstall 80
#   address-family ipv6 unicast
#     route-target import 65512:200
#     import map 22
#     import vrf default map 44 advertise-vpn
#     import vrf advertise-vpn
#     maximum routes 1000

- name: Purge the configuration of VRF address family
  register: result
  cisco.nxos.nxos_vrf_address_family:
    config:
      - name: VRF1
        address_families:
          - afi: ipv4
            safi: unicast
          - afi: ipv6
            safi: unicast
    state: purged

# Task Output:
# ------------
#
# before:
#     - address_families:
#           - afi: ipv4
#             export:
#                 - map: "22"
#                 - vrf:
#                       allow_vpn: true
#                       map_import: "44"
#                 - vrf:
#                       allow_vpn: true
#             maximum:
#                 max_route_options:
#                     threshold:
#                         reinstall_threshold: 80
#                         threshold_value: 60
#                 max_routes: 500
#             route_target:
#                 - export: 65512:200
#             safi: unicast
#           - afi: ipv6
#             import:
#                 - map: "22"
#                 - vrf:
#                       advertise_vpn: true
#                       map_import: "44"
#                 - vrf:
#                       advertise_vpn: true
#             maximum:
#                 max_routes: 1000
#             route_target:
#                 - import: 65512:200
#             safi: unicast
#       name: VRF1
# commands:
#   - vrf context VRF1
#   - no address-family ipv4 unicast
#   - no address-family ipv6 unicast
# after: {}


# Using overridden

# Before state:
# -------------
#
# nxos#show running-config | section ^vrf
# vrf context VRF1
#   address-family ipv4 unicast
#     route-target import 64512:200
#   address-family ipv6 unicast
#     route-target import 554832:500

- name: Override the provided configuration with the existing running configuration
  cisco.nxos.nxos_vrf_address_family:
    config:
      - name: VRF1
        address_families:
          - afi: ipv6
            safi: unicast
            route_target:
              - export: 65512:200
            maximum:
              max_routes: 500
              max_route_options:
                threshold:
                  threshold_value: 60
                  reinstall_threshold: 80
            export:
              - map: "22"
              - vrf:
                  allow_vpn: true
                  map_import: "44"
              - vrf:
                  allow_vpn: true
      - name: temp
        address_families:
          - afi: ipv4
            safi: unicast
            route_target:
              - import: 65512:200
            maximum:
              max_routes: 1000
            export:
              - map: "26"
              - vrf:
                  allow_vpn: true
                  map_import: "46"
    state: overridden

# Task Output:
# ------------
#
# before:
#  - address_families:
#      - afi: ipv4
#        route_target:
#          - import: 64512:200
#        safi: unicast
#      - afi: ipv6
#        route_target:
#          - import: 554832:500
#        safi: unicast
#    name: VRF1
#
# commands:
#  - vrf context VRF1
#  - address-family ipv4 unicast
#  - no route-target import 64512:200
#  - address-family ipv6 unicast
#  - maximum routes 500 60 reinstall 80
#  - no route-target import 554832:500
#  - route-target export 65512:200
#  - export map 22
#  - export vrf default map 44 allow-vpn
#  - export vrf allow-vpn
#  - vrf context temp
#  - address-family ipv4 unicast
#  - maximum routes 1000
#  - route-target import 65512:200
#  - export map 26
#  - export vrf default map 46 allow-vpn
# after:
#  - address_families:
#      - afi: ipv4
#        safi: unicast
#      - afi: ipv6
#        export:
#          - map: "22"
#          - vrf:
#              allow_vpn: true
#              map_import: "44"
#          - vrf:
#              allow_vpn: true
#        maximum:
#          max_route_options:
#            threshold:
#              reinstall_threshold: 80
#              threshold_value: 60
#          max_routes: 500
#        route_target:
#          - export: 65512:200
#        safi: unicast
#    name: VRF1
#  - address_families:
#      - afi: ipv4
#        export:
#          - map: "26"
#          - vrf:
#              allow_vpn: true
#              map_import: "46"
#        maximum:
#          max_routes: 1000
#        route_target:
#          - import: 65512:200
#        safi: unicast
#    name: temp

# Using replaced

# Before state:
# -------------
#
# nxos# show running-config | section ^vrf
# vrf context VRF1
#   address-family ipv4 unicast
#     route-target import 64512:200
#   address-family ipv6 unicast
#     route-target import 554832:500

- name: Replaced state for VRF configuration
  cisco.nxos.nxos_vrf_global:
    config:
      vrfs:
        - ip:
            name_server:
              address_list:
                - 192.168.255.1
            route:
              - destination: 192.168.255.1
                source: 0.0.0.0/0
          name: management
        - name: temp
          description: Test
          ip:
            auto_discard: true
            domain_list:
              - invalid.com
              - example.com
            domain_name: test.org
    state: replaced

# Task Output:
# ------------
#
# before:
#  - address_families:
#      - afi: ipv4
#        route_target:
#          - import: 64512:200
#        safi: unicast
#      - afi: ipv6
#        route_target:
#          - import: 554832:500
#        safi: unicast
#    name: VRF1
# commands:
#  - vrf context VRF1
#  - address-family ipv4 unicast
#  - no route-target import 64512:200
#  - address-family ipv6 unicast
#  - maximum routes 500 60 reinstall 80
#  - no route-target import 554832:500
#  - route-target export 65512:200
#  - export map 22
#  - export vrf default map 44 allow-vpn
#  - export vrf allow-vpn
#  - vrf context temp
#  - address-family ipv4 unicast
#  - maximum routes 1000
#  - route-target import 65512:200
#  - export map 26
#  - export vrf default map 46 allow-vpn
# after:
#  - address_families:
#      - afi: ipv4
#        safi: unicast
#      - afi: ipv6
#        export:
#          - map: "22"
#          - vrf:
#              allow_vpn: true
#              map_import: "44"
#          - vrf:
#              allow_vpn: true
#        maximum:
#          max_route_options:
#            threshold:
#              reinstall_threshold: 80
#              threshold_value: 60
#          max_routes: 500
#        route_target:
#          - export: 65512:200
#        safi: unicast
#    name: VRF1
#  - address_families:
#      - afi: ipv4
#        export:
#          - map: "26"
#          - vrf:
#              allow_vpn: true
#              map_import: "46"
#        maximum:
#          max_routes: 1000
#        route_target:
#          - import: 65512:200
#        safi: unicast
#    name: temp
#
# After state:
# ------------
# router-ios#show running-config | section ^vrf
# vrf context VRF1
#   address-family ipv6 unicast
#     route-target export 65512:200
#     export map 22
#     export vrf default map 44 allow-vpn
#     export vrf allow-vpn
# vrf context temp
#   address-family ipv4 unicast
#     route-target import 65512:200
#     export map 26
#     export vrf default map 46 allow-vpn
#     maximum routes 1000

# Using gathered

# Before state:
# -------------
#
# nxos#show running-config | section ^vrf
# vrf context VRF1
#   address-family ipv4 unicast
#     route-target export 65512:200
#     export map 22
#     export vrf default map 44 allow-vpn
#     export vrf allow-vpn
#     maximum routes 500 60 reinstall 80
#   address-family ipv6 unicast
#     route-target import 65512:200
#     import map 22
#     import vrf default map 44 advertise-vpn
#     import vrf advertise-vpn
#     maximum routes 1000

- name: Gathered state for VRF configuration
  cisco.nxos.nxos_vrf_global:
    config:
    state: gathered

# Task Output:
# ------------
#
# gathered:
#     - address_families:
#           - afi: ipv4
#             export:
#                 - map: "22"
#                 - vrf:
#                       allow_vpn: true
#                       map_import: "44"
#                 - vrf:
#                       allow_vpn: true
#             maximum:
#                 max_route_options:
#                     threshold:
#                         reinstall_threshold: 80
#                         threshold_value: 60
#                 max_routes: 500
#             route_target:
#                 - export: 65512:200
#             safi: unicast
#           - afi: ipv6
#             import:
#                 - map: "22"
#                 - vrf:
#                       advertise_vpn: true
#                       map_import: "44"
#                 - vrf:
#                       advertise_vpn: true
#             maximum:
#                 max_routes: 1000
#             route_target:
#                 - import: 65512:200
#             safi: unicast
#       name: VRF1

# Using rendered

- name: Render provided configuration with device configuration
  register: result
  cisco.nxos.nxos_vrf_address_family:
    config:
      - name: VRF1
        address_families:
          - afi: ipv6
            safi: unicast
            route_target:
              - export: 65512:200
            maximum:
              max_routes: 500
              max_route_options:
                threshold:
                  threshold_value: 60
                  reinstall_threshold: 80
            export:
              - map: "22"
              - vrf:
                  allow_vpn: true
                  map_import: "44"
              - vrf:
                  allow_vpn: true
      - name: temp
        address_families:
          - afi: ipv4
            safi: unicast
            route_target:
              - import: 65512:200
            maximum:
              max_routes: 1000
            export:
              - map: "26"
              - vrf:
                  allow_vpn: true
                  map_import: "46"
    state: rendered

# Task Output:
# ------------
#
# commands:
#   - vrf context VRF1
#   - address-family ipv6 unicast
#   - maximum routes 500 60 reinstall 80
#   - route-target export 65512:200
#   - export map 22
#   - export vrf default map 44 allow-vpn
#   - export vrf allow-vpn
#   - vrf context temp
#   - address-family ipv4 unicast
#   - maximum routes 1000
#   - route-target import 65512:200
#   - export map 26
#   - export vrf default map 46 allow-vpn

# Using Parsed

# Parsed Config:
# -------------
# vrf context VRF1
#   address-family ipv4 unicast
#     route-target import 64512:200
#     route-target export 64512:200
#     export map 22
#     export vrf default map 44 allow-vpn
#     export vrf allow-vpn
#     maximum routes 900 22 reinstall 44
#   address-family ipv6 unicast
#     route-target import 554832:500

- name: Parse the commands for provided configuration
  register: result
  cisco.nxos.nxos_vrf_address_family:
    running_config: "{{ lookup('file', '_parsed.cfg') }}"
    state: parsed

# Task Output:
# ------------
# parsed:
#   - name: VRF1
#     address_families:
#       - afi: ipv4
#         safi: unicast
#         route_target:
#           - import: 64512:200
#           - export: 64512:200
#         export:
#           - map: "22"
#           - vrf:
#               allow_vpn: true
#               map_import: "44"
#           - vrf:
#               allow_vpn: true
#         maximum:
#           max_routes: 900
#           max_route_options:
#             threshold:
#               threshold_value: 22
#               reinstall_threshold: 44
#       - afi: ipv6
#         safi: unicast
#         route_target:
#           - import: 554832:500

Возвращаемые значения

Общие возвращаемые значения описаны здесь; ниже перечислены поля, относящиеся только к этому модулю:

Ключ

Описание

after

list / elements=string

Конфигурация после выполнения модуля.

Возвращается: если были внесены изменения

Пример: ["This output will always be in the same format as the module argspec.\n"]

before

list / elements=string

Конфигурация до выполнения модуля.

Возвращается: если state равно merged, replaced, overridden, deleted или purged

Пример: ["This output will always be in the same format as the module argspec.\n"]

commands

list / elements=string

Набор команд, отправленных на удалённое устройство.

Возвращается: если state равно merged, replaced, overridden, deleted или purged

Пример: ["vrf context management", "address-family ipv4 unicast", "maximum routes 500 60 reinstall 80"]

gathered

list / elements=string

Факты о сетевом ресурсе, собранные с удалённого устройства в виде структурированных данных.

Возвращается: если state равно gathered

Пример: ["This output will always be in the same format as the module argspec.\n"]

parsed

list / elements=string

Собственная конфигурация устройства, переданная в параметре running_config и разобранная в структурированные данные согласно спецификации аргументов модуля.

Возвращается: если state равно parsed

Пример: ["This output will always be in the same format as the module argspec.\n"]

rendered

list / elements=string

Предоставленная в задаче конфигурация в формате, используемом устройством (автономный режим).

Возвращается: если state равно rendered

Пример: ["vrf context test1", "address-family ipv6 unicast", "route-target export 65512:200"]

Авторы

  • Vinay Mulugund (@roverflow)

Ссылки на коллекцию

  • Отслеживание проблем
  • Репозиторий (исходный код)

© 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/nxos/nxos_vrf_address_family_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API