cisco.nxos.nxos_vlans – Модуль ресурсов VLAN
Примечание
Этот плагин является частью коллекции cisco.nxos (версия 1.4.0).
Для его установки используйте: ansible-galaxy collection install cisco.nxos.
Для использования в плейбуке укажите: cisco.nxos.nxos_vlans.
Новое в версии 1.0.0: модуля cisco.nxos
Обзор
- Этот модуль создает и управляет конфигурациями VLAN на Cisco NX-OS.
Примечание
У этого модуля есть соответствующий плагин действий.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| config список / элементы=словарь | Словарь опций Vlan | ||
| enabled логическое значение |
| Управление административным состоянием VLAN. | |
| mapped_vni целое число | Идентификатор Virtual Network Identifier (VNI), сопоставленный с VLAN. | ||
| mode строка |
| Установка режима VLAN на классический Ethernet или fabricpath. Этот параметр доступен для Nexus 5000, 6000 и 7000 серий. | |
| name строка | Имя VLAN. | ||
| state строка |
| Управление рабочим состоянием VLAN. | |
| vlan_id целое число / обязательно | Идентификатор VLAN. | ||
| running_config строка | Этот параметр используется только со state parsed. Значение этого параметра должно быть результатом выполнения команд show vlans | json-pretty и show running-config | section ^vlan на устройстве NX-OS и разделенных новой строкой. State parsed считывает конфигурацию из параметра running_config, преобразует её в структурированные данные Ansible, соответствующие спецификации модуля ресурсов, а затем возвращает её в ключе parsed результата. | ||
| state строка |
| Состояние конфигурации после завершения модуля. Состояние overridden перезапишет конфигурацию всех VLAN на устройстве (включая VLAN 1) с предоставленной конфигурацией в задаче. Используйте с осторожностью. | |
Примечания
Примечание
- Тестировалось на NXOS 7.3.(0)D1(1) на VIRL
Примеры
# Using merged
# Before state:
# -------------
# vlan 1
- name: Merge provided configuration with device configuration.
cisco.nxos.nxos_vlans:
config:
- vlan_id: 5
name: test-vlan5
- vlan_id: 10
enabled: false
state: merged
# After state:
# ------------
# vlan 5
# name test-vlan5
# state active
# no shutdown
# vlan 10
# state active
# shutdown
# Using replaced
# Before state:
# -------------
# vlan 1
# vlan 5
# name test-vlan5
# vlan 10
# shutdown
- name: Replace device configuration of specified vlan with provided configuration.
cisco.nxos.nxos_vlans:
config:
- vlan_id: 5
name: test-vlan
enabled: false
- vlan_id: 10
enabled: false
state: replaced
# After state:
# ------------
# vlan 1
# vlan 5
# name test-vlan
# state active
# shutdown
# vlan 10
# state active
# shutdown
# Using overridden
# Before state:
# -------------
# vlan 1
# vlan 3
# name testing
# vlan 5
# name test-vlan5
# shutdown
# vlan 10
# shutdown
- name: Override device configuration of all vlans with provided configuration.
cisco.nxos.nxos_vlans:
config:
- vlan_id: 5
name: test-vlan
- vlan_id: 10
state: active
state: overridden
# After state:
# ------------
# vlan 5
# name test-vlan
# state active
# no shutdown
# vlan 10
# state active
# no shutdown
# Using deleted
# Before state:
# -------------
# vlan 1
# vlan 5
# vlan 10
- name: Delete vlans.
cisco.nxos.nxos_vlans:
config:
- vlan_id: 5
- vlan_id: 10
state: deleted
# After state:
# ------------
#
# Using rendered
- name: Use rendered state to convert task input to device specific commands
cisco.nxos.nxos_vlans:
config:
- vlan_id: 5
name: vlan5
mapped_vni: 100
- vlan_id: 6
name: vlan6
state: suspend
state: rendered
# Task Output (redacted)
# -----------------------
# rendered:
# - vlan 5
# - name vlan5
# - vn-segment 100
# - vlan 6
# - name vlan6
# - state suspend
# Using parsed
# parsed.cfg
# ------------
# {
# "TABLE_vlanbrief": {
# "ROW_vlanbrief": [
# {
# "vlanshowbr-vlanid": "1",
# "vlanshowbr-vlanid-utf": "1",
# "vlanshowbr-vlanname": "default",
# "vlanshowbr-vlanstate": "active",
# "vlanshowbr-shutstate": "noshutdown"
# },
# {
# "vlanshowbr-vlanid": "5",
# "vlanshowbr-vlanid-utf": "5",
# "vlanshowbr-vlanname": "vlan5",
# "vlanshowbr-vlanstate": "suspend",
# "vlanshowbr-shutstate": "noshutdown"
# },
# {
# "vlanshowbr-vlanid": "6",
# "vlanshowbr-vlanid-utf": "6",
# "vlanshowbr-vlanname": "VLAN0006",
# "vlanshowbr-vlanstate": "active",
# "vlanshowbr-shutstate": "noshutdown"
# },
# {
# "vlanshowbr-vlanid": "7",
# "vlanshowbr-vlanid-utf": "7",
# "vlanshowbr-vlanname": "vlan7",
# "vlanshowbr-vlanstate": "active",
# "vlanshowbr-shutstate": "noshutdown"
# }
# ]
# },
# "TABLE_mtuinfo": {
# "ROW_mtuinfo": [
# {
# "vlanshowinfo-vlanid": "1",
# "vlanshowinfo-media-type": "enet",
# "vlanshowinfo-vlanmode": "ce-vlan"
# },
# {
# "vlanshowinfo-vlanid": "5",
# "vlanshowinfo-media-type": "enet",
# "vlanshowinfo-vlanmode": "ce-vlan"
# },
# {
# "vlanshowinfo-vlanid": "6",
# "vlanshowinfo-media-type": "enet",
# "vlanshowinfo-vlanmode": "ce-vlan"
# },
# {
# "vlanshowinfo-vlanid": "7",
# "vlanshowinfo-media-type": "enet",
# "vlanshowinfo-vlanmode": "ce-vlan"
# }
# ]
# }
# }
#
# vlan 1,5-7
# vlan 5
# state suspend
# name vlan5
# vlan 7
# name vlan7
# vn-segment 100
- name: Use parsed state to convert externally supplied config to structured format
cisco.nxos.nxos_vlans:
running_config: "{{ lookup('file', 'parsed.cfg') }}"
state: parsed
# Task output (redacted)
# -----------------------
# parsed:
# - vlan_id: 5
# enabled: True
# mode: "ce"
# name: "vlan5"
# state: suspend
#
# - vlan_id: 6
# enabled: True
# mode: "ce"
# state: active
#
# - vlan_id: 7
# enabled: True
# mode: "ce"
# name: "vlan7"
# state: active
# mapped_vni: 100
# Using gathered
# Existing device config state
# -------------------------------
# nxos-9k# show vlan | json
# {"TABLE_vlanbrief": {"ROW_vlanbrief": [{"vlanshowbr-vlanid": "1", "vlanshowbr-vlanid-utf": "1", "vlanshowbr-vlanname": "default", "vlanshowbr-vlanstate
# ": "active", "vlanshowbr-shutstate": "noshutdown"}, {"vlanshowbr-vlanid": "5", "vlanshowbr-vlanid-utf": "5", "vlanshowbr-vlanname": "vlan5", "vlanshowb
# r-vlanstate": "suspend", "vlanshowbr-shutstate": "noshutdown"}, {"vlanshowbr-vlanid": "6", "vlanshowbr-vlanid-utf": "6", "vlanshowbr-vlanname": "VLAN00
# 06", "vlanshowbr-vlanstate": "active", "vlanshowbr-shutstate": "noshutdown"}, {"vlanshowbr-vlanid": "7", "vlanshowbr-vlanid-utf": "7", "vlanshowbr-vlan
# name": "vlan7", "vlanshowbr-vlanstate": "active", "vlanshowbr-shutstate": "shutdown"}]}, "TABLE_mtuinfo": {"ROW_mtuinfo": [{"vlanshowinfo-vlanid": "1",
# "vlanshowinfo-media-type": "enet", "vlanshowinfo-vlanmode": "ce-vlan"}, {"vlanshowinfo-vlanid": "5", "vlanshowinfo-media-type": "enet", "vlanshowinfo-
# vlanmode": "ce-vlan"}, {"vlanshowinfo-vlanid": "6", "vlanshowinfo-media-type": "enet", "vlanshowinfo-vlanmode": "ce-vlan"}, {"vlanshowinfo-vlanid": "7"
# , "vlanshowinfo-media-type": "enet", "vlanshowinfo-vlanmode": "ce-vlan"}]}}
#
# nxos-9k# show running-config | section ^vlan
# vlan 1,5-7
# vlan 5
# state suspend
# name vlan5
# vlan 7
# shutdown
# name vlan7
# vn-segment 190
- name: Gather vlans facts from the device using nxos_vlans
cisco.nxos.nxos_vlans:
state: gathered
# Task output (redacted)
# -----------------------
# gathered:
# - vlan_id: 5
# enabled: True
# mode: "ce"
# name: "vlan5"
# state: suspend
#
# - vlan_id: 6
# enabled: True
# mode: "ce"
# state: active
#
# - vlan_id: 7
# enabled: False
# mode: "ce"
# name: "vlan7"
# state: active
# mapped_vni: 190
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| after список / элементы=строка | при изменении | Конфигурация в виде структурированных данных после завершения модуля. Пример: Возвращаемая конфигурация всегда будет в том же формате, что и вышеуказанные параметры. |
| before список / элементы=строка | всегда | Конфигурация в виде структурированных данных до вызова модуля. Пример: Возвращаемая конфигурация всегда будет в том же формате, что и вышеуказанные параметры. |
| commands список / элементы=строка | всегда | Набор команд, отправленных на удалённое устройство. Пример: ['vlan 5', 'name test-vlan5', 'state suspend'] |
Авторы
- Trishna Guha (@trishnaguha)
© 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/cisco/nxos/nxos_vlans_module.html