Spec-Zone.ru › Ansible 2.11

junipernetworks.junos.junos_ospf_interfaces – Модуль ресурсов интерфейсов OSPF.

Примечание

Этот плагин входит в коллекцию junipernetworks.junos (версия 1.3.0).

Для его установки используйте: ansible-galaxy collection install junipernetworks.junos.

Для использования в книге задач укажите: junipernetworks.junos.junos_ospf_interfaces.

Добавлено в версии 1.3.0: of junipernetworks.junos

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

  • Этот модуль управляет конфигурацией OSPF(v2/v3) интерфейсов на устройствах с операционной системой Juniper JUNOS.

Примечание

Для этого модуля существует соответствующий плагин действий.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • ncclient (>=v0.6.4)
  • xmltodict (>=0.12.0)

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
config
список / элементы=словарь
Список конфигураций OSPF для интерфейсов.
address_family
список / элементы=словарь
Настройки OSPF на интерфейсах в контексте адресной семьи.
afi
строка / обязательно
    Варианты:
  • ipv4
  • ipv6
Идентификатор адресной семьи (AFI) для настроек OSPF на интерфейсах.
processes
словарь
Конфигурация интерфейсов для процесса OSPF.
area
словарь
Укажите идентификатор области.
area_id
строка
Укажите идентификатор области.
authentication
словарь
Укажите тип аутентификации.
md5
словарь
Укажите аутентификацию на основе MD5.
key_id
строка
Укажите идентификатор ключа MD5.
key_value
строка
Укажите значение ключа.
start_time
строка
Укажите время начала передачи ключа.
simple_password
строка
Укажите пароль для аутентификации.
bandwidth_based_metrics
список / элементы=словарь
Укажите список метрик, основанных на пропускной способности.
bandwidth
строка
    Варианты:
  • 1g
  • 10g
Пропускная способность для применения метрики.
metric
целое число
Укажите метрику.
dead_interval
целое число
Интервал ожидания (секунды).
demand_circuit
булево
    Варианты:
  • нет
  • да
Интерфейс функционирует как цепь с запросом.
flood_reduction
булево
    Варианты:
  • нет
  • да
Включить уменьшение потока.
hello_interval
целое число
Интервал Hello (секунды).
interface_type
строка
    Варианты:
  • nbma
  • p2mp
  • p2p
Укажите тип интерфейса.
ipsec_sa
строка
Имя ассоциации безопасности IPSec.
metric
целое число
Применяемая метрика к интерфейсу.
mtu
целое число
Максимальный размер пакета OSPF.
no_advertise_adjacency_segment
булево
    Варианты:
  • нет
  • да
Не рекламировать сегмент смежности для этого интерфейса.
no_eligible_backup
булево
    Варианты:
  • нет
  • да
Не подходит для резервного копирования трафика с защищенных интерфейсов.
no_eligible_remote_backup
булево
    Варианты:
  • нет
  • да
Не подходит для резервного копирования трафика удалённого LFA с защищённых интерфейсов.
no_interface_state_traps
булево
    Варианты:
  • нет
  • да
Не отправлять ловушки состояния интерфейса.
no_neighbor_down_notification
булево
    Варианты:
  • нет
  • да
Не сообщать другим протоколам о событиях потери соединения с соседом.
node_link_protection
строка
Защита интерфейса от отказов как канала, так и узла.
poll_interval
целое число
Интервал опроса (секунды).
priority
целое число
Приоритет для интерфейса.
retransmit_interval
целое число
Интервал повторной передачи (секунды).
secondary
булево
    Варианты:
  • нет
  • да
Обращаться к интерфейсу как к вторичному.
te_metric
целое число
Метрика инжиниринга трафика, применяемая к интерфейсу.
transit_delay
целое число
Задержка транзита (секунды).
name
строка / обязательно
Имя/Идентификатор интерфейса.
router_id
строка / обязательно
Идентификатор маршрутизатора OSPFv3.
running_config
строка
Этот параметр используется только со статусом parsed.
Значение этого параметра должно соответствовать выводу устройства Junos, полученному при выполнении команды show protocols ospf.
Статус parsed считывает конфигурацию из параметра running_config, преобразует её в структурированные данные Ansible, соответствующие argspec модуля ресурса, а затем возвращает её в поле parsed результата.
state
строка
    Варианты:
  • объединённый ←
  • заменён
  • переопределён
  • удален
  • обработанный
  • собран
  • отрендерен
Состояние, в котором должна быть оставлена конфигурация.

Примечания

Примечание

  • Для работы этого модуля требуется, чтобы на управляемом устройстве была включена служба netconf.
  • Этот модуль работает с подключением netconf. См. Junos OS Platform Options.
  • Проверено на JunOS v18.4R1

Примеры

# Using merged
#
# Before state
# ------------
#
# admin# show protocols ospf

- name: Merge Junos OSPF interfaces config
  junipernetworks.junos.junos_ospf_interfaces:
    config:
    - router_id: '10.200.16.75'
      name: 'ge-0/0/2.0'
      address_family:
        - afi: 'ipv4'
          processes:
            area:
              area_id: '0.0.0.2'
            priority: 3
            metric: 5
    state: merged

# After state
# -----------
#
# admin# show protocols ospf
# area 0.0.0.2 {
#     interface ge-0/0/2.0 {
#         metric 5;
#         priority 3;
#     }
# }

# Using replaced
#
# Before state
# ------------
#
# admin# show protocols ospf
# area 0.0.0.2 {
#     interface ge-0/0/2.0 {
#         metric 5;
#         priority 3;
#     }
# }
- name: Replace Junos OSPF interfaces config
  junipernetworks.junos.junos_ospf_interfaces:
   config:
     - router_id: '10.200.16.75'
       name: 'ge-0/0/2.0'
       address_family:
         - afi: 'ipv4'
           processes:
             area:
               area_id: '0.0.0.1'
             priority: 6
             metric: 6
   state: replaced

# After state
# -----------
#
# admin# show protocols ospf
# area 0.0.0.1 {
#     interface ge-0/0/2.0 {
#         metric 6;
#         priority 6;
#     }
# }

# Using overridden
#
# Before state
# ------------
#
# admin# show protocols ospf
# area 0.0.0.3 {
#     interface ge-0/0/3.0 {
#         metric 5;
#         priority 3;
#     }
# }
# area 0.0.0.2 {
#     interface ge-0/0/2.0 {
#         metric 5;
#         priority 3;
#     }
# }

- name: Override Junos OSPF interfaces config
  junipernetworks.junos.junos_ospf_interfaces:
  config:
    - router_id: '10.200.16.75'
      name: 'ge-0/0/1.0'
      address_family:
        - afi: 'ipv4'
          processes:
            area:
              area_id: '0.0.0.1'
            priority: 3
            metric: 5
  state: overridden

# After state
# -----------
#
# admin# show protocols ospf
# area 0.0.0.1 {
#     interface ge-0/0/1.0 {
#         metric 5;
#         priority 3;
#     }
# }

#
# Using deleted
#
# Before state
# ------------
#
# admin# show protocols ospf
# area 0.0.0.1 {
#     interface ge-0/0/1.0 {
#         metric 5;
#         priority 3;
#     }
# }

- name: Delete Junos OSPF interfaces config
  junipernetworks.junos.junos_ospf_interfaces:
    config:
      - router_id: '10.200.16.75'
        name: 'ge-0/0/1.0'
    state: deleted

# After state
# -----------
#
# admin# show protocols ospf
# Using gathered
#
# Before state
# ------------
#
# admin# show protocols ospf
# area 0.0.0.3 {
#     interface ge-0/0/3.0 {
#         metric 5;
#         priority 3;
#     }
# }
# area 0.0.0.2 {
#     interface ge-0/0/2.0 {
#         metric 5;
#         priority 3;
#     }
# }

- name: Gather Junos OSPF interfaces config
  junipernetworks.junos.junos_ospf_interfaces:
    config:
    state: gathered
#
#
# -------------------------
# Module Execution Result
# -------------------------
#
#    "gathered": [
#         {
#             "address_family": [
#                 {
#                     "afi": "ipv4",
#                     "processes": {
#                         "area": {
#                             "area_id": "0.0.0.3"
#                         },
#                         "metric": 5,
#                         "priority": 3
#                     }
#                 }
#             ],
#             "name": "ge-0/0/3.0",
#             "router_id": "10.200.16.75"
#         },
#         {
#             "address_family": [
#                 {
#                     "afi": "ipv4",
#                     "processes": {
#                         "area": {
#                             "area_id": "0.0.0.2"
#                         },
#                         "metric": 5,
#                         "priority": 3
#                     }
#                 }
#             ],
#             "name": "ge-0/0/2.0",
#             "router_id": "10.200.16.75"
#         }
#     ]
#
# Using rendered
#
#
- name: Render the commands for provided  configuration
  junipernetworks.junos.junos_ospf_interfaces:
    config:
    - router_id: '10.200.16.75'
      name: 'ge-0/0/2.0'
      address_family:
        - afi: 'ipv4'
          processes:
            area:
              area_id: '0.0.0.2'
            priority: 3
            metric: 5
    state: rendered

#
#
# -------------------------
# Module Execution Result
# -------------------------
#
#
# "rendered": "
# <nc:protocols
#     xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0">
#     <nc:ospf>
#         <nc:area>
#             <nc:name>0.0.0.2</nc:name>
#             <nc:interface>
#                 <nc:name>ge-0/0/2.0</nc:name>
#                 <nc:priority>3</nc:priority>
#                 <nc:metric>5</nc:metric>
#             </nc:interface>
#         </nc:area>
#     </nc:ospf>
# </nc:protocols>"
#
# Using parsed
# parsed.cfg
# ------------
# <?xml version="1.0" encoding="UTF-8"?>
# <rpc-reply message-id="urn:uuid:0cadb4e8-5bba-47f4-986e-72906227007f">
#     <configuration changed-seconds="1590139550" changed-localtime="2020-05-22 09:25:50 UTC">
#         <protocols>
#             <ospf>
#                 <area>
#                     <name>0.0.0.2</name>
#                     <stub>
#                         <default-metric>200</default-metric>
#                     </stub>
#                     <interface>
#                         <name>ge-0/0/2.0</name>
#                         <metric>5</metric>
#                         <priority>3</priority>
#                     </interface>
#                 </area>
#             </ospf>
#         </protocols>
#         <routing-options>
#             <router-id>10.200.16.75</router-id>
#         </routing-options>
#     </configuration>
# </rpc-reply>


- name: Parsed the device configuration to get output commands
  junipernetworks.junos.junos_ospf_interfaces:
    running_config: "{{ lookup('file', './parsed.cfg') }}"
    state: parsed
#
#
# -------------------------
# Module Execution Result
# -------------------------
#
#
# "parsed": [
#         {
#             "address_family": [
#                 {
#                     "afi": "ipv4",
#                     "processes": {
#                         "area": {
#                             "area_id": "0.0.0.2"
#                         },
#                         "metric": 5,
#                         "priority": 3
#                     }
#                 }
#             ],
#             "name": "ge-0/0/2.0",
#             "router_id": "10.200.16.75"
#         }
#     ]
#

Значения возврата

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

Ключ Возвращаемое значение Описание
after
словарь
при изменении
Вызов результирующей модели конфигурации.

Пример:
Возвращаемая конфигурация всегда будет в том же формате, что и параметры выше.
before
словарь
всегда
Конфигурация до вызова модели.

Пример:
Возвращаемая конфигурация всегда будет в том же формате, что и параметры выше.
commands
список / элементы=строка
всегда
Набор команд, отправленных на удалённое устройство.

Пример:
['<nc:protocols xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"> <nc:ospf> <nc:area> <nc:name>0.0.0.3</nc:name> <nc:interface> <nc:name>ge-0/0/3.0</nc:name> <nc:priority>3</nc:priority> <nc:metric>5</nc:metric> </nc:interface> </nc:area> <nc:area> <nc:name>0.0.0.2</nc:name> <nc:interface> <nc:name>ge-0/0/2.0</nc:name> <nc:priority>3</nc:priority> <nc:metric>5</nc:metric> </nc:interface> </nc:area> </nc:ospf> </nc:protocols>", " <nc:routing-options xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"> <nc:router-id>10.200.16.75</nc:router-id> <nc:router-id>10.200.16.75</nc:router-id> </nc:routing-options>', 'xml 2', 'xml 3']


Авторы

  • Rohit Thakur (@rohitthakur2590)

© 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/junipernetworks/junos/junos_ospf_interfaces_module.html

Spec-Zone.ru

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