Spec-Zone.ru › Ansible 2.7

cnos_interface – Управление конфигурацией интерфейсов на устройствах с Lenovo CNOS

Новая версия с 2.3.

  • Обзор
  • Параметры
  • Примечания
  • Примеры
  • Значения возврата
  • Статус

Обзор

  • Этот модуль позволяет работать с конфигурацией интерфейсов. Используемые операторы перегружены для обеспечения контроля над конфигурациями интерфейсов коммутаторов. Помимо обычных атрибутов, связанных с подключением устройства, существует семь аргументов интерфейса, которые будут выполнять дополнительную конфигурацию. Это interfaceArg1, interfaceArg2, interfaceArg3, interfaceArg4, interfaceArg5, interfaceArg6 и interfaceArg7. Более подробную информацию о том, как использовать эти аргументы, см. в разделе [Перегруженные переменные]. Конфигурация интерфейсов обрабатывается в шести контекстах в обычном CLI. Это 1. Конфигурация имени интерфейса 2. Конфигурация интерфейса Ethernet 3. Конфигурации интерфейса loopback 4. Конфигурации интерфейса управления 5. Конфигурации агрегирования портов 6. Конфигурации VLAN. Этот модуль использует SSH для управления конфигурацией сетевого устройства. Результаты операции будут помещены в каталог с именем «results», который должен быть создан пользователем в локальном каталоге, где выполняется playbook.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
deviceType
- / обязательно
добавлен в 2.3
    Варианты:
  • g8272_cnos
  • g8296_cnos
  • g8332_cnos
  • NE1072T
  • NE1032
  • NE1032T
  • NE10032
  • NE2572
Указывает тип устройства, на котором выполняется метод. Варианты NE1072T, NE1032, NE1032T, NE10032, NE2572 добавлены с версии 2.4.
enablePassword
-
добавлен в 2.3
Настраивает пароль, используемый для входа в режим глобальной конфигурации коммутатора. Если коммутатор не требует этого пароля, параметр игнорируется. Как правило, значение должно поступать из файла инвентаризации, но также может быть указано в качестве переменной. Параметр необязателен. Если он не указан, значение по умолчанию не будет использоваться.
host
- / обязательно
добавлен в 2.3
Эта переменная используется для поиска файла хостов в /etc/ansible/hosts и определения IP-адреса устройства, на которое будет применена конфигурация. Обычно в книге Playbook используется ключевое слово Ansible {{ inventory_hostname }} в качестве абстракции группы сетевых элементов, которые необходимо настроить.
interfaceArg1
- / обязательно
    Варианты:
  • channel-group
  • bfd
  • switchport
  • description
  • duplex
  • flowcontrol
  • ip
  • ipv6
  • lacp
  • lldp
  • load-interval
  • mac
  • mac-address
  • mac-learn
  • microburst-detection
  • mtu
  • service
  • service-policy
  • shutdown
  • snmp
  • spanning-tree
  • speed
  • storm-control
  • vlan
  • vrrp
  • port-channel
Значение по умолчанию:
null
Это перегруженный первый аргумент интерфейса. Справочная информация по использованию этого аргумента представлена в руководстве пользователя.
interfaceArg2
-
    Варианты:
  • номер channel-group
  • access или mode или trunk
  • описание
  • auto или full или half
  • прием или передача
  • port-priority
  • suspend-individual
  • таймаут
  • прием или передача или уведомление о сбое
  • tlv-select
  • задержка интервала загрузки в секундах
  • счетчик
  • название списка доступа MAC
  • MAC-адрес в формате HHHH.HHHH.HHHH
  • значение THRESHOLD в единицах буферного блока
  • <64-9216> MTU в байтах-<64-9216> для L2 пакета
  • <576-9216> для L3 IPv4 пакета
  • <1280-9216> для L3 IPv6 пакета
  • введите идентификатор экземпляра
  • ввод или вывод
  • copp-system-policy
  • тип
  • 1000 или 10000 или 40000 или auto
  • вещательный или групповой или индивидуальный
  • отключить или включить или только для исходящего
  • идентификатор виртуального маршрутизатора
  • destination-ip или destination-mac или destination-port или source-dest-ip или source-dest-mac или source-dest-port или source-interface или source-ip или source-mac или source-port
Значение по умолчанию:
null
Это перегруженный второй аргумент интерфейса. Справочная информация по использованию этого аргумента представлена в руководстве пользователя.
interfaceArg3
-
    Варианты:
  • active или on или passive
  • on или off
  • приоритет порта LACP
  • long или short
  • link-aggregation или mac-phy-status или management-address или max-frame-size или port-description или port-protocol-vlan или port-vlan или power-mdi или protocol-identity или system-capabilities или system-description или system-name или vid-management или vlan-name
  • счетчик для интервала загрузки
  • имя ввода политики
  • all или имя класса Copp для подключения
  • qos
  • очереди
  • Укажите разрешенный уровень трафика
  • ipv6
Значение по умолчанию:
null
Это перегруженный третий аргумент интерфейса. Справочная информация по использованию этого аргумента представлена в руководстве пользователя.
interfaceArg4
-
    Варианты:
  • ключевая цепочка
  • ключевой идентификатор
  • keyed-md5 или keyed-sha1 или meticulous-keyed-md5 или meticulous-keyed-sha1 или simple
  • значение интервала в миллисекундах
  • IP-адрес назначения (IPV4 и IPV6)
  • в или из
  • MAC-адрес
  • значение таймаута в секундах
  • идентификатор класса
  • запрос
  • Укажите IPv4-адрес
  • идентификатор области OSPF в десятичном формате
  • идентификатор области OSPF в формате IP-адреса
  • anycast или secondary
  • ethernet
  • vlan
  • MAC-адрес (аппаратный) в формате HHHH.HHHH.HHHH
  • задержка интервала загрузки в секундах
  • указать имя ввода политики
  • вход или выход
  • стоимость
  • port-priority
  • минимальный интервал приема BFD
  • source-interface
Значение по умолчанию:
null
Это перегруженный четвертый аргумент интерфейса. Справочная информация по использованию этого аргумента представлена в руководстве пользователя.
interfaceArg5
-
    Варианты:
  • название ключевой цепочки
  • значение ключевого идентификатора
  • ключевая цепочка
  • ключевой идентификатор
  • минимальный интервал приема BFD
  • значение множителя Hello
  • admin-down или multihop или non-persistent
  • название идентификатора класса поставщика
  • bootfile-name или host-name или log-server или ntp-server или tftp-server-name
  • номер слота/шасси
  • интерфейс VLAN
  • указать имя ввода политики
  • стоимость пути порта или auto
  • приращения приоритета порта 32
Значение по умолчанию:
null
Это перегруженный пятый аргумент интерфейса. Справочная информация по использованию этого аргумента представлена в руководстве пользователя.
interfaceArg6
-
    Варианты:
  • строка ключа аутентификации
  • название ключевой цепочки
  • значение ключевого идентификатора
  • значение множителя Hello
  • admin-down или non-persistent
Значение по умолчанию:
null
Это перегруженный шестой аргумент интерфейса. Справочная информация по использованию этого аргумента представлена в руководстве пользователя.
interfaceArg7
-
    Варианты:
  • строка ключа аутентификации
  • admin-down
Значение по умолчанию:
null
Это перегруженный седьмой аргумент интерфейса. Справочная информация по использованию этого аргумента представлена в руководстве пользователя.
interfaceOption
- / обязательно
    Варианты:
  • None
  • ethernet
  • loopback
  • mgmt
  • port-channel
  • vlan
Значение по умолчанию:
null
Указывает атрибут, который вы указываете после команды interface
interfaceRange
- / обязательно
Значение по умолчанию:
null
Указывает диапазон интерфейсов, для которого рассматривается порт-канал.
outputfile
- / обязательно
добавлен в 2.3
Указывает путь к файлу, где сохраняется вывод каждого выполнения команды. Здесь сохраняются каждая команда, указанная в объединённом файле шаблона, и каждый ответ от устройства. Обычно расположение находится в папке результатов, но вы можете выбрать другое расположение в зависимости от ваших прав записи.
password
- / обязательно
добавлен в 2.3
Настраивает пароль, используемый для аутентификации подключения к удалённому устройству. Значение параметра password используется для аутентификации сессии SSH. В целом, значение должно поступать из файла инвентаризации, но также может быть указано в виде переменной. Этот параметр необязателен. Если он не указан, значение по умолчанию не будет использоваться.
username
- / обязательно
добавлен в 2.3
Настраивает имя пользователя, используемое для аутентификации подключения к удалённому устройству. Значение параметра username используется для аутентификации сессии SSH. В целом, значение должно поступать из файла инвентаризации, но также может быть указано в виде переменной. Этот параметр необязателен. Если он не указан, значение по умолчанию не будет использоваться.

Примечания

Примечание

  • Дополнительную информацию об использовании Ansible для управления устройствами Lenovo Network см. на сайте https://www.ansible.com/ansible-lenovo.

Примеры

Tasks : The following are examples of using the module cnos_interface. These are written in the main.yml file of the tasks directory.
---
- name: Test Interface Ethernet - channel-group
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 1
      interfaceArg1: "channel-group"
      interfaceArg2: 33
      interfaceArg3: "on"

- name: Test Interface Ethernet - switchport
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "switchport"
      interfaceArg2: "access"
      interfaceArg3: 33

- name: Test Interface Ethernet - switchport mode
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "switchport"
      interfaceArg2: "mode"
      interfaceArg3: "access"

- name: Test Interface Ethernet  - Description
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "description"
      interfaceArg2: "Hentammoo "

- name: Test Interface Ethernet - Duplex
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 1
      interfaceArg1: "duplex"
      interfaceArg2: "auto"

- name: Test Interface Ethernet - flowcontrol
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "flowcontrol"
      interfaceArg2: "send"
      interfaceArg3: "off"

- name: Test Interface Ethernet - lacp
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "lacp"
      interfaceArg2: "port-priority"
      interfaceArg3: 33

- name: Test Interface Ethernet  - lldp
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "lldp"
      interfaceArg2: "tlv-select"
      interfaceArg3: "max-frame-size"

- name: Test Interface Ethernet - load-interval
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "load-interval"
      interfaceArg2: "counter"
      interfaceArg3: 2
      interfaceArg4: 33

- name: Test Interface Ethernet - mac
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "mac"
      interfaceArg2: "copp-system-acl-vlag-hc"

- name: Test Interface Ethernet - microburst-detection
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "microburst-detection"
      interfaceArg2: 25

- name: Test Interface Ethernet  - mtu
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "mtu"
      interfaceArg2: 66

- name: Test Interface Ethernet - service-policy
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "service-policy"
      interfaceArg2: "input"
      interfaceArg3: "Anil"

- name: Test Interface Ethernet - speed
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 1
      interfaceArg1: "speed"
      interfaceArg2: "auto"

- name: Test Interface Ethernet - storm
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "storm-control"
      interfaceArg2: "broadcast"
      interfaceArg3: 12.5

- name: Test Interface Ethernet - vlan
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "vlan"
      interfaceArg2: "disable"

- name: Test Interface Ethernet - vrrp
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "vrrp"
      interfaceArg2: 33

- name: Test Interface Ethernet - spanning tree1
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "spanning-tree"
      interfaceArg2: "bpduguard"
      interfaceArg3: "enable"

- name: Test Interface Ethernet - spanning tree 2
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "spanning-tree"
      interfaceArg2: "mst"
      interfaceArg3: "33-35"
      interfaceArg4: "cost"
      interfaceArg5: 33

- name: Test Interface Ethernet - ip1
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "ip"
      interfaceArg2: "access-group"
      interfaceArg3: "anil"
      interfaceArg4: "in"

- name: Test Interface Ethernet - ip2
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "ip"
      interfaceArg2: "port"
      interfaceArg3: "anil"

- name: Test Interface Ethernet - bfd
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "bfd"
      interfaceArg2: "interval"
      interfaceArg3: 55
      interfaceArg4: 55
      interfaceArg5: 33

- name: Test Interface Ethernet - bfd
  cnos_interface:
      deviceType: "{{ hostvars[inventory_hostname]['deviceType'] }}"
      outputfile: "./results/test_interface_{{ inventory_hostname }}_output.txt"
      interfaceOption: 'ethernet'
      interfaceRange: 33
      interfaceArg1: "bfd"
      interfaceArg2: "ipv4"
      interfaceArg3: "authentication"
      interfaceArg4: "meticulous-keyed-md5"
      interfaceArg5: "key-chain"
      interfaceArg6: "mychain"

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

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

Ключ Возвращаемое значение Описание
msg
строка
всегда
Сообщение об успехе или ошибке

Пример:
Конфигурация интерфейса выполнена.


Состояние

  • Не гарантируется обратная совместимость интерфейса этого модуля. [предварительная версия]
  • Этот модуль поддерживается сообществом Ansible. [сообщество]

Авторы

  • Anil Kumar Muraleedharan (@amuraleedhar)

Подсказка

Если вы заметите какие-либо проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/cnos_interface_module.html

Spec-Zone.ru

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