Spec-Zone.ru › Ansible

Модуль dellemc.enterprise_sonic.sonic_ars — управление конфигурацией адаптивной маршрутизации и коммутации (ARS) в SONiC

Примечание

Этот модуль входит в коллекцию dellemc.enterprise_sonic (версия 3.2.0).

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

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

Чтобы использовать её в плейбуке, укажите: dellemc.enterprise_sonic.sonic_ars.

Добавлено в dellemc.enterprise_sonic 3.1.0

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

Обзор

  • Этот модуль позволяет управлять конфигурацией ARS на устройствах под управлением SONiC

Параметры

Параметр

Комментарии

config

словарь

Конфигурация ARS

ars_objects

список / элементы=словарь

Список конфигураций объектов групп следующих переходов ARS

idle_time

целое число

Время ожидания в микросекундах

Диапазон 16–32767

max_flows

целое число

Максимальное количество потоков, которое может обрабатывать объект ARS

Варианты:

  • 256
  • 512
  • 1024
  • 2048
  • 4096
  • 8192
  • 16384
  • 32768

mode

строка

Режим переназначения пути ARS

Варианты:

  • "fixed"
  • "flowlet-quality"
  • "flowlet-random"
  • "packet-quality"
  • "packet-random"

name

строка / обязательный

Имя объекта группы следующих переходов

port_bindings

список / элементы=словарь

Список конфигураций привязок портов ARS

name

строка / обязательный

Имя порта

profile

строка

Профиль порта ARS, привязываемый к порту

Обязателен для изменения

port_profiles

список / элементы=словарь

Список конфигураций профилей портов ARS

enable

логическое значение

Включить или отключить ARS для порта

Варианты:

  • false
  • true

load_future_weight

целое число

Вес будущей нагрузки порта, используемый в вычислениях EWMA

Диапазон 1–16

load_past_weight

целое число

Вес прошлой нагрузки порта в процентах

Диапазон 0–100

load_scaling_factor

число с плавающей точкой

Коэффициент масштабирования нагрузки порта

Варианты:

  • 0.0
  • 1.0
  • 2.5
  • 4.0
  • 5.0
  • 10.0
  • 20.0
  • 40.0
  • 80.0

name

строка / обязательный

Имя профиля порта

profiles

список / элементы=словарь

Список конфигураций профилей ARS

algorithm

строка

Алгоритм ARS, используемый для вычисления качества

EWMA — экспоненциальное взвешенное скользящее среднее

Варианты:

  • "EWMA"

load_current_max_val

целое число

Максимальное пороговое значение текущей нагрузки для процесса квантования

Диапазон 0–133169151

load_current_min_val

целое число

Минимальное пороговое значение текущей нагрузки для процесса квантования

Диапазон 0–133169151

load_future_max_val

целое число

Максимальное пороговое значение будущей нагрузки для процесса квантования

Диапазон 0–266338303

load_future_min_val

целое число

Минимальное пороговое значение будущей нагрузки для процесса квантования

Диапазон 0–266338303

load_past_max_val

целое число

Максимальное пороговое значение прошлой нагрузки для процесса квантования

Диапазон 0–10000

load_past_min_val

целое число

Минимальное пороговое значение прошлой нагрузки для процесса квантования

Диапазон 0–10000

name

строка / обязательный

Имя профиля

port_load_current

логическое значение

Устанавливать текущую выборочную нагрузку порта, если её значение меньше среднего

Варианты:

  • false
  • true

port_load_exponent

целое число

Показатель степени EWMA, используемый при вычислении нагрузки порта

Диапазон 1–16

port_load_future

логическое значение

Включить или отключить будущую нагрузку порта — среднее количество байтов в очереди, измеренное на порту

Варианты:

  • false
  • true

port_load_future_weight

целое число

Вес будущей нагрузки порта, используемый в вычислениях EWMA

Диапазон 1–16

port_load_past

логическое значение

Включить или отключить прошлую нагрузку порта — среднее количество исходящих байтов, измеренное на порту

Варианты:

  • false
  • true

port_load_past_weight

целое число

Вес прошлой нагрузки порта, используемый в вычислениях EWMA

Диапазон 1–16

random_seed

целое число

Начальное значение генератора случайных чисел

Диапазон 0–16777214

sampling_interval

целое число

Интервал выборки в микросекундах

Диапазон 1–255

switch_binding

словарь

Конфигурация привязки коммутатора ARS

profile

строка

Профиль ARS, привязываемый к коммутатору

state

строка

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

Варианты:

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

Примечания

Примечание

  • Проверено на Enterprise SONiC Distribution от Dell Technologies.
  • Поддерживает check_mode.

Примеры

# Using "merged" state
#
# Before state:
# -------------
#
# sonic# show running-configuration ars
# (No ARS configuration present)

- name: Merge ARS configuration
  dellemc.enterprise_sonic.sonic_ars:
    config:
      ars_objects:
        - name: obj1
          idle_time: 100
          max_flows: 1024
          mode: flowlet-quality
      port_profiles:
        - name: pp1
          enable: true
          load_future_weight: 9
          load_past_weight: 20
          load_scaling_factor: 0
      profiles:
        - name: p1
          algorithm: EWMA
          load_current_max_val: 10000
          load_current_min_val: 100
          load_future_max_val: 20000
          load_future_min_val: 200
          load_past_max_val: 500
          load_past_min_val: 50
          port_load_current: true
          port_load_exponent: 7
          port_load_future: true
          port_load_future_weight: 9
          port_load_past: true
          port_load_past_weight: 11
          random_seed: 800000
          sampling_interval: 140
      port_bindings:
        - name: Ethernet20
          profile: pp1
      switch_binding:
        profile: p1
    state: merged

# After state:
# ------------
#
# sonic# show running-configuration ars
# ars profile p1
#  sampling-interval 140
#  random-seed 800000
#  port-load-past-weight 11
#  port-load-future-weight 9
#  port-load-current
#  port-load-exponent 7
#  load-past-min-val 50
#  load-past-max-val 500
#  load-future-min-val 200
#  load-future-max-val 20000
#  load-current-min-val 100
#  load-current-max-val 10000
# !
# ars port-profile pp1
#  enable
#  load-past-weight 20
#  load-future-weight 9
# !
# ars object obj1
#  idle-time 100
#  max-flows 1024
# !
# interface Ethernet20
#  mtu 9100
#  speed 400000
#  fec RS
#  unreliable-los auto
#  shutdown
#  ars bind pp1
# !
# ars bind profile p1


# Using "replaced" state
#
# Before state:
# -------------
#
# sonic# show running-configuration ars
# ars profile p1
#  sampling-interval 140
#  random-seed 800000
#  port-load-past-weight 11
#  port-load-future-weight 9
#  port-load-current
#  port-load-exponent 7
#  load-past-min-val 50
#  load-past-max-val 500
#  load-future-min-val 200
#  load-future-max-val 20000
#  load-current-min-val 100
#  load-current-max-val 10000
# !
# ars port-profile pp1
#  enable
#  load-past-weight 20
#  load-future-weight 9
# !
# ars object obj1
#  idle-time 100
#  max-flows 1024
# !
# interface Ethernet20
#  mtu 9100
#  speed 400000
#  fec RS
#  unreliable-los auto
#  shutdown
#  ars bind pp1
# !
# ars bind profile p1

- name: Replace ARS configuration
  dellemc.enterprise_sonic.sonic_ars:
    config:
      port_profiles:
        - name: pp2
          enable: true
          load_future_weight: 8
          load_past_weight: 15
      port_bindings:
        - name: Ethernet20
          profile: pp2
    state: replaced

# After state:
# ------------
#
# sonic# show running-configuration ars
# ars profile p1
#  sampling-interval 140
#  random-seed 800000
#  port-load-past-weight 11
#  port-load-future-weight 9
#  port-load-current
#  port-load-exponent 7
#  load-past-min-val 50
#  load-past-max-val 500
#  load-future-min-val 200
#  load-future-max-val 20000
#  load-current-min-val 100
#  load-current-max-val 10000
# !
# ars port-profile pp2
#  enable
#  load-past-weight 15
#  load-future-weight 8
# !
# ars object obj1
#  idle-time 100
#  max-flows 1024
# !
# interface Ethernet20
#  mtu 9100
#  speed 400000
#  fec RS
#  unreliable-los auto
#  shutdown
#  ars bind pp2
# !
# ars bind profile p1


# Using "overridden" state
#
# Before state:
# -------------
#
# sonic# show running-configuration ars
# ars profile p1
#  sampling-interval 140
#  random-seed 800000
#  port-load-past-weight 11
#  port-load-future-weight 9
#  port-load-current
#  port-load-exponent 7
#  load-past-min-val 50
#  load-past-max-val 500
#  load-future-min-val 200
#  load-future-max-val 20000
#  load-current-min-val 100
#  load-current-max-val 10000
# !
# ars port-profile pp2
#  enable
#  load-past-weight 15
#  load-future-weight 8
# !
# ars object obj1
#  idle-time 100
#  max-flows 1024
# !
# interface Ethernet20
#  mtu 9100
#  speed 400000
#  fec RS
#  unreliable-los auto
#  shutdown
#  ars bind pp1
# !
# ars bind profile p1

- name: Override ARS configuration
  dellemc.enterprise_sonic.sonic_ars:
    config:
      ars_objects:
        - name: obj4
          idle_time: 65
          max_flows: 4096
          mode: flowlet-quality
    state: overridden

# After state:
# ------------
#
# sonic# show running-configuration ars
# ars object obj4
#  idle-time 65
#  max-flows 4096


# Using "deleted" state
#
# Before state:
# -------------
#
# sonic# show running-configuration ars
# ars profile p1
#  sampling-interval 140
#  random-seed 800000
#  port-load-past-weight 11
#  port-load-future-weight 9
#  port-load-current
#  port-load-exponent 7
#  load-past-min-val 50
#  load-past-max-val 500
#  load-future-min-val 200
#  load-future-max-val 20000
#  load-current-min-val 100
#  load-current-max-val 10000
# !
# ars port-profile pp2
#  enable
#  load-past-weight 15
#  load-future-weight 8

- name: Delete specified ARS configuration
  dellemc.enterprise_sonic.sonic_ars:
    config:
      port_profiles:
        - name: pp2
      profiles:
        - name: p1
          load_current_max_val: 10000
          load_future_max_val: 20000
          load_past_max_val: 500
          random_seed: 800000
          sampling_interval: 140
    state: deleted

# After state:
# ------------
#
# sonic# show running-configuration ars
# ars profile p1
#  port-load-past-weight 11
#  port-load-future-weight 9
#  port-load-current
#  port-load-exponent 7
#  load-past-min-val 50
#  load-future-min-val 200
#  load-current-min-val 100


# Using "deleted" state
#
# Before state:
# -------------
#
# sonic# show running-configuration ars
# ars profile p1
#  sampling-interval 140
#  random-seed 800000
#  port-load-past-weight 11
#  port-load-future-weight 9
#  port-load-current
#  port-load-exponent 7
#  load-past-min-val 50
#  load-past-max-val 500
#  load-future-min-val 200
#  load-future-max-val 20000
#  load-current-min-val 100
#  load-current-max-val 10000
# !
# ars port-profile pp1
#  enable
#  load-past-weight 20
#  load-future-weight 9
# !
# ars object obj1
#  idle-time 100
#  max-flows 1024
# !
# interface Ethernet20
#  mtu 9100
#  speed 400000
#  fec RS
#  unreliable-los auto
#  shutdown
#  ars bind pp1
# !
# ars bind profile p1

- name: Delete all ARS configuration
  dellemc.enterprise_sonic.sonic_ars:
    config:
    state: deleted

# After state:
# ------------
#
# sonic# show running-configuration ars
# (No ARS configuration present)

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

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

Ключ

Описание

after

словарь

Конфигурация, полученная в результате вызова модуля.

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

after(generated)

словарь

Конфигурация, созданная в результате вызова модуля.

Возвращается: если check_mode

before

словарь

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

Возвращается: всегда

commands

список / элементы=строка

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

Возвращается: всегда

Пример: ["command 1", "command 2", "command 3"]

Авторы

    1. S. Talabi (@stalabi1)

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

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

© 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/dellemc/enterprise_sonic/sonic_ars_module.html

Spec-Zone.ru

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