Spec-Zone.ru › Ansible

Модуль dellemc.enterprise_sonic.sonic_sflow – настройка параметров sflow на SONiC

Примечание

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

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

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

Для использования в плейбуке укажите: dellemc.enterprise_sonic.sonic_sflow.

Новое в dellemc.enterprise_sonic 2.5.0

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

Обзор

  • Этот модуль предоставляет конфигурацию для отбора проб sflow на устройствах, работающих под управлением SONiC

Параметры

Параметр

Комментарии

config

словарь

Определяет данные конфигурации и операционного состояния, связанные с отбором проб трафика плоскости данных на основе sflow.

agent

строка

Интерфейс агента

collectors

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

Данные конфигурации для коллекторов sflow.

address

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

IP-адрес коллектора sflow.

network_instance

строка

Имя сетевого экземпляра, содержащего коллектор sflow

По умолчанию: "default"

port

целое число

Номер UDP-порта для коллектора sflow.

По умолчанию: 6343

enabled

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

Включает или отключает отбор проб sflow для устройства.

Варианты:

  • false
  • true

interfaces

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

Данные конфигурации для данных sflow на интерфейсах.

enabled

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

Если sflow глобально включен, включает или отключает sflow на интерфейсе

Варианты:

  • false
  • true

name

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

Имя интерфейса

sampling_rate

целое число

Переопределяет глобальную скорость выборки для этого интерфейса

polling_interval

целое число

Интервал опроса sflow (в секундах).

должно быть 0 или в диапазоне 5-300

sampling_rate

целое число

Устанавливает глобальную скорость выборки пакетов.

Выбирается 1 пакет из каждых sampling_rate пакетов, проходящих через интерфейс

state

строка

Указывает тип обновления конфигурации, который необходимо выполнить на устройстве.

Варианты:

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

Примеры

# Using deleted to clear all configuration
  # Before state:
  # config:
  #   enabled: False
  #   polling_interval: 40
  #   collectors:
  #     - address: 1.1.1.1
  #       port: 6343
  #       network_instance: default
  #   interfaces:
  #     - name: Ethernet0
  #       sampling_rate: 400000

  # Example
    - name: "clear all sflow config and disable"
      sonic_sflow:
        config: {}
        state: deleted

  # After state:
  # Note, "enabled" can't be deleted. It's just set to default. All values that can be cleared are deleted.
  # config:
  #   enabled: False
  #   (no other recorded config)
  # ------

# Using deleted to clear just the interfaces and collectors
  # Before state:
  # config:
  #   enabled: True
  #   polling_interval: 40
  #   collectors:
  #     - address: 1.1.1.1
  #       port: 6343
  #       network_instance: default
  #   interfaces:
  #     - name: Ethernet0
  #       sampling_rate: 400000

  # Example
    - name: "clear all sflow interfaces and collectors"
      sonic_sflow:
        config:
          interfaces: []
          collectors: []
        state: deleted

  # After state:
  # config:
  #   enabled: True
  #   polling_interval: 40
  # Note: deletes list of items if empty list is provided. Otherwise must specify key and have values match to delete, see other Example
  # ------

# Using deleted to delete individual interfaces
  # Before state:
  # config:
  #   enabled: False
  #   polling_interval: 40
  #   collectors:
  #     - address: 1.1.1.1
  #       port: 6343
  #       network_instance: default
  #   interfaces:
  #     - name: Ethernet0
  #       sampling_rate: 400000
  #     - name: Ethernet8
  #       enabled: False
  #     - name: Ethernet16
  #       sampling_rate: 400000

  # Example
  # note: to delete the whole interface, just the name needs to specify the name, nothing else
    - name: "delete individual interfaces"
      sonic_sflow:
        config:
          interfaces:
            - name: Ethernet8
            - name: Ethernet16
      state: deleted

  # After state:
  # All configuration deleted for the listed interfaces
  # config:
  #   enabled: False
  #   polling_interval: 40
  #   collectors:
  #     - address: 1.1.1.1
  #       port: 6343
  #       network_instance: default
  #   interfaces:
  #     - name: Ethernet0
  #       sampling_rate: 400000
  # ------

# Using deleted to delete collectors
  # Before state:
  # config:
  #   enabled: False
  #   polling_interval: 40
  #   collectors:
  #     - address: 1.1.1.1
  #       port: 6343
  #       network_instance: default
  #     - address: 1.1.1.2
  #       port: 6000
  #       network_instance: "vrf_1"
  #   interfaces:
  #     - name: Ethernet0
  #       sampling_rate: 400000

  # Example:
  # Note: The values of all three fields must be known to identify a collector, but
  # the "port" and "network instance" attributes have default values. These default
  # values do not need to be explicitly specified in a playbook for deletion of a
  # collector having default values configured for these attributes.
    - name: "delete individual collectors"
      sonic_sflow:
        config:
          collectors:
            - address: 1.1.1.2
              port: 6000
              network_instance: "vrf_1"
            - address: 1.1.1.1
      state: deleted

  # After state:
  # config:
  #   enabled: False
  #   polling_interval: 40
  #   interfaces:
  #     - name: Ethernet0
  #       sampling_rate: 400000
  # ------

# Using deleted to clear individual values
  # Before state:
  # config:
  #   enabled: True
  #   polling_interval: 30
  #   sampling_rate: 400000
  #   collectors:
  #     - address: 1.1.1.1
  #       port: 6343
  #       network_instance: default
  #   interfaces:
  #     - name: Ethernet0
  #       enabled: True
  #       sampling_rate: 400000
  #     - name: Ethernet4
  #       enabled: True
  #       sampling_rate: 400002

  # Example
    - name: "clear specific config attributes if values match"
      sonic_sflow:
        config:
          enabled: False
          polling_interval: 30
          sampling_rate: 400000
          interfaces:
            - name: Ethernet0
              sampling_rate: 400000
      state: deleted

  # After state:
  # config:
  #   enabled: True
  #   collectors:
  #     - address: 1.1.1.1
  #       port: 6343
  #       network_instance: default
  #   interfaces:
  #     - name: Ethernet0
  #       enabled: True
  #     - name: Ethernet4
  #       enabled: True
  #       sampling_rate: 400002

# ------------


# Using merged to add sflow collector
  # Before state:
  # config:
  #   enabled: False

  # Example:
    - name: "Add an sflow collector with default values for 'port' and 'network_instance"
      sonic_sflow:
        config:
          collectors:
            - address: 1.1.1.2
        state: merged
  # note: There can only be two collectors configured at a time.
  # note: Only "port" and and "network_instance" have default values.

  # After state:
  # config:
  #   enabled: False
  #   collectors:
  #     - address: 1.1.1.2
  #       port: 6343
  #       network_instance: default
  # ------

# Using merged to add and modify interface configuration
  # Before state:
  # config:
  #   enabled: False
  #   interfaces:
  #     - name: Ethernet0
  #       sampling_rate: 400002
  #     - name: Ethernet8
  #       enabled: True
  #       sampling_rate: 400001

  # Example
    - name: "Add/modify interface settings"
      sonic_sflow:
        config:
          interfaces:
            - name: Ethernet0
              enabled: True
            - name: Ethernet8
              enabled: False
              sampling_rate: 400003
            - name: Ethernet16
            - name: Ethernet32
              sampling_rate: 400001
        state: merged
  # Note: must set at least one of enabled or sampling_rate for interface to be added

  # After state
  # config:
  #   enabled: False
  #   interfaces:
  #     - name: Ethernet0
  #       sampling_rate: 400002
  #       enabled: True
  #     - name: Ethernet8
  #       enabled: False
  #       sampling_rate: 400003
  #     - name: Ethernet32
  #       sampling_rate: 400001
  # ------

# Using merged to add/modify global settings
  # Before state:
  # config:
  #   enabled: False
  #   polling_interval: 40

  # Example
    - name: "Adding/modifying other settings using 'merged'"
      sonic_sflow:
        config:
          polling_interval: 50
          enabled: True
          agent: Ethernet0
        state: merged

  # After state
  # config:
  #   enabled: True
  #   polling_interval: 50
  #   agent: Ethernet0

# -----------


# using overridden to override all existing sflow config with the given settings
  # Before state:
  # config:
  #   enabled: False
  #   polling_interval: 50
  #   collectors:
  #     - address: 1.1.1.1
  #       port: 6343
  #       network_instance: default
  #   interfaces:
  #     - name: Ethernet0
  #       enabled: False
  #     - name: Ethernet8
  #       enabled: False
  #     - name: Ethernet16
  #       enabled: False
  #     - name: Ethernet24
  #       enabled: False

  # Example:
    - name: "override all existing sflow config with input config from a playbook task"
      sonic_sflow:
        config:
          enabled: True
          agent: Ethernet0
          interfaces:
            - name: Ethernet0
              enabled: True
        state: overridden

  # After state:
  # config:
  #   enabled: True
  #   agent: Ethernet0
  #   interfaces:
  #     - name: Ethernet0
  #       enabled: True
# ------------


# Using replaced to replace specific interface settings
  # Before state:
  # config:
  #   enabled: False
  #   polling_interval: 50
  #   collectors:
  #     - address: 1.1.1.1
  #       port: 6343
  #       network_instance: default
  #   interfaces:
  #     - name: Ethernet0
  #       enabled: True
  #       sampling_rate: 400002
  #     - name: Ethernet4
  #       enabled: False
  #     - name: Ethernet8
  #       enabled: False
  #       sampling_rate: 400010
  #     - name: Ethernet24
  #       enabled: False

  # Example:
    - name: "only add or substitute certain interfaces"
      sonic_sflow:
        config:
          enabled: False
          polling_interval: 50
          interfaces:
            - name: Ethernet0
              sampling_rate: 400010
            - name: Ethernet4
              sampling_rate: 400010
            - name: Ethernet16
              enabled: False
        state: replaced

  # After state:
  # config:
  #   enabled: False
  #   polling_interval: 50
  #   collectors:
  #     - address: 1.1.1.1
  #       port: 6343
  #       network_instance: default
  #   interfaces:
  #     - name: Ethernet0
  #       sampling_rate: 400010
  #     - name: Ethernet4
  #       sampling_rate: 400010
  #     - name: Ethernet8
  #       enabled: False
  #       sampling_rate: 400010
  #     - name: Ethernet16
  #       enabled: False
  #     - name: Ethernet24
  #       enabled: False
  # ------

  # Using "replaced" with different top level values replaces nested components.
  # Before state:
  # config:
  #   enabled: False
  #   polling_interval: 50
  #   collectors:
  #     - address: 1.1.1.1
  #       port: 6343
  #       network_instance: default
  #   interfaces:
  #     - name: Ethernet0
  #       enabled: False
  #     - name: Ethernet8
  #       enabled: False
  #     - name: Ethernet16
  #       enabled: False
  #     - name: Ethernet24
  #       enabled: False

  # Example:
    - name: "replaces everything"
      sonic_sflow:
        config:
          enabled: False
          polling_interval: 30
        state: replaced

  # After state:
  # config:
  #   enabled: False
  #   polling_interval: 30
  # -----------

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

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

Ключ

Описание

after

словарь

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

Возвращается: при изменении

Пример: "The configuration returned will always be in the same format\n as the parameters above.\n"

before

словарь

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

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

Пример: "The configuration returned will always be in the same format\n as the parameters above.\n"

commands

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

Набор команд, отправленных на удаленное устройство.

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

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

Авторы

  • Xiao Han (@Xiao_Han2)

Ссылки на сборку

  • Система отслеживания ошибок
  • Репозиторий (источники)

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/dellemc/enterprise_sonic/sonic_sflow_module.html

Spec-Zone.ru

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