Модуль 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 По умолчанию: |
|
port целое число |
Номер UDP-порта для коллектора sflow. По умолчанию: |
|
enabled логическое значение |
Включает или отключает отбор проб sflow для устройства. Варианты:
|
|
interfaces список / элементы=словарь |
Данные конфигурации для данных sflow на интерфейсах. |
|
enabled логическое значение |
Если sflow глобально включен, включает или отключает sflow на интерфейсе Варианты:
|
|
name строка / обязательно |
Имя интерфейса |
|
sampling_rate целое число |
Переопределяет глобальную скорость выборки для этого интерфейса |
|
polling_interval целое число |
Интервал опроса sflow (в секундах). должно быть 0 или в диапазоне 5-300 |
|
sampling_rate целое число |
Устанавливает глобальную скорость выборки пакетов. Выбирается 1 пакет из каждых sampling_rate пакетов, проходящих через интерфейс |
state строка | Указывает тип обновления конфигурации, который необходимо выполнить на устройстве. Варианты:
|
Примеры
# 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 словарь | Вызов модуля конфигурации с результатом. Возвращается: при изменении Пример: |
before словарь | Конфигурация до вызова модуля. Возвращается: всегда Пример: |
commands список / элементы=строка | Набор команд, отправленных на удаленное устройство. Возвращается: всегда Пример: |
Ссылки на сборку
© 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