Модуль cisco.iosxr.iosxr_interfaces – модуль ресурсов для настройки интерфейсов.
Примечание
Этот модуль входит в коллекцию cisco.iosxr (версия 12.3.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install cisco.iosxr.
Чтобы использовать её в плейбуке, укажите: cisco.iosxr.iosxr_interfaces.
Добавлено в cisco.iosxr 1.0.0
Краткое описание
- Этот модуль управляет атрибутами интерфейсов на сетевых устройствах Cisco IOS-XR.
Примечание
Для этого модуля предусмотрен соответствующий плагин действий.
Псевдонимы: interfaces
Параметры
Параметр | Комментарии |
|---|---|
config list / elements=dictionary | Словарь параметров интерфейса |
|
description string |
Описание интерфейса. |
|
duplex string |
Настраивает режим дуплекса интерфейса. Если параметр не задан, по умолчанию используется автоматическое согласование. Варианты:
|
|
enabled boolean |
Административное состояние интерфейса. Задайте значение Варианты:
|
|
mtu integer |
Задаёт значение MTU для интерфейса. Применимо только к интерфейсам Ethernet. Допустимые значения см. в документации производителя. |
|
name string / обязательный |
Полное имя настраиваемого интерфейса в формате |
|
speed integer |
Настраивает скорость интерфейса. Если параметр не задан, по умолчанию используется автоматическое согласование. |
running_config string | Этот параметр используется только при состоянии parsed. Значением этого параметра должен быть вывод, полученный от устройства IOS-XR при выполнении команды show running-config interface. Состояние parsed считывает конфигурацию из параметра |
state string | Состояние конфигурации после завершения работы модуля Варианты:
|
Примечания
Примечание
- Этот модуль работает с подключением
network_cli. См. https://docs.ansible.com/ansible/latest/network/user_guide/platform_iosxr.html - В примерах модуля используется плагин обратного вызова (stdout_callback = yaml) для вывода задач в формате yaml.
Примеры
# Using merged
# Before state:
# -------------
#
# viosxr#show running-config interface
# interface Loopback888
# !
# interface Loopback999
# !
# interface MgmtEth0/RP0/CPU0/0
# ipv4 address dhcp
# !
- name: Configure Ethernet interfaces
cisco.iosxr.iosxr_interfaces:
config:
- name: GigabitEthernet0/0/0/2
description: Configured by Ansible
enabled: true
- name: GigabitEthernet0/0/0/3
description: Configured by Ansible Network
enabled: false
duplex: full
state: merged
# Task Output
# -----------
#
# before:
# - enabled: true
# name: Loopback888
# - enabled: true
# name: Loopback999
# commands:
# - interface GigabitEthernet0/0/0/2
# - description Configured by Ansible
# - no shutdown
# - interface GigabitEthernet0/0/0/3
# - description Configured by Ansible Network
# - duplex full
# - shutdown
# after:
# - enabled: true
# name: Loopback888
# - enabled: true
# name: Loopback999
# - description: Configured by Ansible
# enabled: true
# name: GigabitEthernet0/0/0/2
# - description: Configured by Ansible Network
# duplex: full
# enabled: false
# name: GigabitEthernet0/0/0/3
# After state:
# ------------
#
# viosxr#show running-config interface
# interface Loopback888
# !
# interface Loopback999
# !
# interface MgmtEth0/RP0/CPU0/0
# ipv4 address dhcp
# !
# interface preconfigure GigabitEthernet0/0/0/2
# description Configured by Ansible
# !
# interface preconfigure GigabitEthernet0/0/0/3
# description Configured by Ansible Network
# duplex full
# shutdown
# !
# Using replaced
# Before state:
# ------------
#
# viosxr#show running-config interface
# interface Loopback888
# !
# interface Loopback999
# !
# interface MgmtEth0/RP0/CPU0/0
# ipv4 address dhcp
# !
# interface preconfigure GigabitEthernet0/0/0/2
# description Configured by Ansible
# !
# interface preconfigure GigabitEthernet0/0/0/3
# description Configured by Ansible Network
# duplex full
# shutdown
# !
- name: Replace their existing configuration per interface
cisco.iosxr.iosxr_interfaces:
config:
- name: GigabitEthernet0/0/0/2
description: Configured by Ansible
enabled: true
mtu: 2000
- name: GigabitEthernet0/0/0/3
description: Configured by Ansible Network
enabled: false
duplex: auto
state: replaced
# Task Output
# -----------
#
# before:
# - enabled: true
# name: Loopback888
# - enabled: true
# name: Loopback999
# - description: Configured by Ansible
# enabled: true
# name: GigabitEthernet0/0/0/2
# - description: Configured by Ansible Network
# duplex: full
# enabled: false
# name: GigabitEthernet0/0/0/3
# commands:
# - interface GigabitEthernet0/0/0/2
# - mtu 2000
# - interface GigabitEthernet0/0/0/3
# - duplex half
# after:
# - enabled: true
# name: Loopback888
# - enabled: true
# name: Loopback999
# - description: Configured by Ansible
# enabled: true
# mtu: 2000
# name: GigabitEthernet0/0/0/2
# - description: Configured by Ansible Network
# duplex: half
# enabled: false
# name: GigabitEthernet0/0/0/3
# After state:
# ------------
#
# viosxr#show running-config interface
# interface Loopback888
# !
# interface Loopback999
# !
# interface MgmtEth0/RP0/CPU0/0
# ipv4 address dhcp
# !
# interface preconfigure GigabitEthernet0/0/0/2
# description Configured by Ansible
# mtu 2000
# !
# interface preconfigure GigabitEthernet0/0/0/3
# description Configured by Ansible Network
# duplex half
# shutdown
# !
# Using overridden
# Before state:
# ------------
#
# viosxr#show running-config interface
# interface Loopback888
# !
# interface Loopback999
# !
# interface MgmtEth0/RP0/CPU0/0
# ipv4 address dhcp
# !
# interface preconfigure GigabitEthernet0/0/0/2
# description Configured by Ansible
# mtu 2000
# !
# interface preconfigure GigabitEthernet0/0/0/3
# description Configured by Ansible Network
# duplex half
# shutdown
# !
- name: Override interfaces configuration
cisco.iosxr.iosxr_interfaces:
config:
- name: GigabitEthernet0/0/0/2
description: Configured by Ansible
enabled: true
duplex: auto
- name: GigabitEthernet0/0/0/3
description: Configured by Ansible Network
enabled: false
speed: 1000
state: overridden
# Task Output
# -----------
#
# before:
# - enabled: true
# name: Loopback888
# - enabled: true
# name: Loopback999
# - description: Configured by Ansible
# enabled: true
# mtu: 2000
# name: GigabitEthernet0/0/0/2
# - description: Configured by Ansible Network
# duplex: half
# enabled: false
# name: GigabitEthernet0/0/0/3
# commands:
# - interface GigabitEthernet0/0/0/2
# - no mtu
# - duplex half
# - interface GigabitEthernet0/0/0/3
# - no description
# - no shutdown
# - no duplex
# after:
# - enabled: true
# name: Loopback888
# - enabled: true
# name: Loopback999
# - description: Configured by Ansible
# duplex: half
# enabled: true
# name: GigabitEthernet0/0/0/2
# - enabled: true
# name: GigabitEthernet0/0/0/3
# After state:
# ------------
#
# viosxr#show running-config interface
# interface Loopback888
# !
# interface Loopback999
# !
# interface MgmtEth0/RP0/CPU0/0
# ipv4 address dhcp
# !
# interface preconfigure GigabitEthernet0/0/0/2
# description Configured by Ansible
# duplex half
# !
# interface preconfigure GigabitEthernet0/0/0/3
# !
# Using deleted
# Before state:
# ------------
#
# viosxr#show running-config interface
# interface Loopback888
# !
# interface Loopback999
# !
# interface MgmtEth0/RP0/CPU0/0
# ipv4 address dhcp
# !
# interface preconfigure GigabitEthernet0/0/0/2
# description Configured by Ansible
# duplex half
# !
# interface preconfigure GigabitEthernet0/0/0/3
# !
- name: Delete interfaces arguments
cisco.iosxr.iosxr_interfaces:
config:
- name: GigabitEthernet0/0/0/2
- name: GigabitEthernet0/0/0/3
state: deleted
# Task Output
# -----------
#
# before:
# - enabled: true
# name: Loopback888
# - enabled: true
# name: Loopback999
# - description: Configured by Ansible
# duplex: half
# enabled: true
# name: GigabitEthernet0/0/0/2
# - enabled: true
# name: GigabitEthernet0/0/0/3
# commands:
# - interface GigabitEthernet0/0/0/2
# - no description
# - no duplex
# after:
# - enabled: true
# name: Loopback888
# - enabled: true
# name: Loopback999
# - enabled: true
# name: GigabitEthernet0/0/0/2
# - enabled: true
# name: GigabitEthernet0/0/0/3
# After state:
# ------------
#
# viosxr#show running-config interface
# interface Loopback888
# !
# interface Loopback999
# !
# interface MgmtEth0/RP0/CPU0/0
# ipv4 address dhcp
# !
# interface preconfigure GigabitEthernet0/0/0/2
# !
# interface preconfigure GigabitEthernet0/0/0/3
# !
# Using parsed
# File: parsed.cfg
# ----------------
#
# interface Loopback888
# description test for ansible
# shutdown
# !
# interface MgmtEth0/0/CPU0/0
# ipv4 address 10.8.38.70 255.255.255.0
# !
# interface GigabitEthernet0/0/0/0
# description Configured and Merged by Ansible-Network
# mtu 110
# ipv4 address 172.31.1.1 255.255.255.0
# duplex half
# !
# interface GigabitEthernet0/0/0/3
# shutdown
# !
# interface GigabitEthernet0/0/0/4
# shutdown
# !
# - name: Parse provided configuration
# cisco.iosxr.iosxr_interfaces:
# running_config: "{{ lookup('file', './parsed.cfg') }}"
# state: parsed
# Task Output
# -----------
#
# parsed:
# - name: MgmtEth0/RP0/CPU0/0
# - access_groups:
# - acls:
# - direction: in
# name: acl_1
# - direction: out
# name: acl_2
# afi: ipv4
# - acls:
# - direction: in
# name: acl6_1
# - direction: out
# name: acl6_2
# afi: ipv6
# name: GigabitEthernet0/0/0/0
# - access_groups:
# - acls:
# - direction: out
# name: acl_1
# afi: ipv4
# name: GigabitEthernet0/0/0/1
# Using rendered
- name: Render platform specific commands from task input using rendered state
cisco.iosxr.iosxr_interfaces:
config:
- name: GigabitEthernet0/0/0/0
description: Configured and Merged by Ansible-Network
mtu: 110
enabled: true
duplex: half
- name: GigabitEthernet0/0/0/1
description: Configured and Merged by Ansible-Network
mtu: 2800
enabled: false
speed: 100
duplex: full
state: rendered
# Task Output
# -----------
#
# rendered:
# - interface GigabitEthernet0/0/0/0
# - description Configured and Merged by Ansible-Network
# - mtu 110
# - duplex half
# - no shutdown
# - interface GigabitEthernet0/0/0/1
# - description Configured and Merged by Ansible-Network
# - mtu 2800
# - speed 100
# - duplex full
# - shutdown
# Using gathered
# Before state:
# ------------
#
# RP/0/0/CPU0:an-iosxr-02#show running-config interface
# interface Loopback888
# description test for ansible
# shutdown
# !
# interface MgmtEth0/0/CPU0/0
# ipv4 address 10.8.38.70 255.255.255.0
# !
# interface GigabitEthernet0/0/0/0
# description Configured and Merged by Ansible-Network
# mtu 110
# ipv4 address 172.31.1.1 255.255.255.0
# duplex half
# !
# interface GigabitEthernet0/0/0/3
# shutdown
# !
# interface GigabitEthernet0/0/0/4
# shutdown
# !
- name: Gather facts for interfaces
cisco.iosxr.iosxr_interfaces:
config:
state: gathered
# Task Output
# -----------
#
# gathered:
# - description: test for ansible
# enabled: false
# name: Loopback888
# - description: Configured and Merged by Ansible-Network
# duplex: half
# enabled: true
# mtu: 110
# name: GigabitEthernet0/0/0/0
# - enabled: false
# name: GigabitEthernet0/0/0/3
# - enabled: false
# name: GigabitEthernet0/0/0/4
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
after list / elements=string | Конфигурация в виде структурированных данных после завершения работы модуля. Возвращается: при наличии изменений Пример: |
before list / elements=string | Конфигурация в виде структурированных данных до вызова модуля. Возвращается: всегда Пример: |
commands list / elements=string | Набор команд, отправленных на удалённое устройство Возвращается: всегда Пример: |
Ссылки на коллекцию
© 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/iosxr/iosxr_interfaces_module.html