dellemc.enterprise_sonic.sonic_qos_interfaces module – Manage QoS interfaces configuration on SONiC
Note
This module is part of the dellemc.enterprise_sonic collection (version 3.0.0).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install dellemc.enterprise_sonic
.
To use it in a playbook, specify: dellemc.enterprise_sonic.sonic_qos_interfaces
.
New in dellemc.enterprise_sonic 2.5.0
Synopsis
This module provides configuration management of QoS interfaces for devices running SONiC
Parameters
Parameter |
Comments |
---|---|
QoS interfaces configuration |
|
Name of the interface |
|
PFC configuration |
|
Enable or disable asymmetric PFC on the interface Choices:
|
|
PFC priorities configuration |
|
DOT1P value, range 0-7 Maxium of 2 priorities supported |
|
Enable or disable the priority Choices:
|
|
PFC watchdog storm action Choices:
|
|
PFC watchdog detection time in milliseconds, range 100-5000 |
|
PFC watchdog restoration time milliseconds, range 100-60000 |
|
QoS maps interface configuration |
|
DOT1P to forwarding group map associated with the interface |
|
DSCP to forwarding group map associated with the interface |
|
Forwarding group to DOT1P map associated with the interface |
|
Forwarding group to DSCP map associated with the interface |
|
Forwading group to priority group map associated with the interface |
|
Forwarding group to queue map associated with the interface |
|
PFC priority to priority group map associated with the interface |
|
PFC priority to queue map associated with the interface |
|
Queue configuration |
|
Queue identification Range 0-7 for interface queues, range 0-47 for CPU queues |
|
Name of the WRED profile |
|
Name of scheduler policy to be applied to traffic on the interface |
|
The state of the configuration after module completion Replaced and overridden states are not supported for this module due to configuration constraints Choices:
|
Notes
Note
Tested against Enterprise SONiC Distribution by Dell Technologies.
Supports
check_mode
.
Examples
# Using Merged
#
# Before state:
# -------------
#
# sonic# show running-configuration interface Eth 1/5
# !
# interface Eth1/5
# (No QoS configuration present for the interface)
- name: Merge QoS interfaces configuration
dellemc.enterprise_sonic.sonic_qos_interfaces:
config:
- name: Eth1/5
queues:
- id: 0
wred_profile: profile1
scheduler_policy: policy1
qos_maps:
dscp_fwd_group: dscp_map1
dot1p_fwd_group: dot1p_map1
fwd_group_dscp: fwd_dscp_map1
fwd_group_dot1p: fwd_dot1p_map1
fwd_group_queue: fwd_queue_map1
fwd_group_pg: fwd_pg_map1
pfc_priority_queue: pfc_queue_map1
pfc_priority_pg: pfc_pg_map1
pfc:
asymmetric: True
watchdog_action: alert
watchdog_detect_time: 100
watchdog_restore_time: 200
priorities:
- dot1p: 0
enable: True
- dot1p: 1
enable: True
state: merged
# After state:
# ------------
#
# sonic# show running-configuration interface Eth 1/5
# !
# interface Eth1/5
# queue 0 wred-policy profile1
# scheduler-policy policy1
# qos-map dscp-tc dscp_map1
# qos-map dot1p-tc dot1p_map1
# qos-map tc-queue fwd_queue_map1
# qos-map tc-pg fwd_pg_map1
# qos-map tc-dscp fwd_dscp_map1
# qos-map tc-dot1p fwd_dot1p_map1
# qos-map pfc-priority-queue pfc_queue_map1
# qos-map pfc-priority-pg pfc_pg_map1
# priority-flow-control priority 0
# priority-flow-control priority 1
# priority-flow-control asymmetric
# priority-flow-control watchdog action alert
# priority-flow-control watchdog on detect-time 100
# priority-flow-control watchdog restore-time 200
#
#
# Using deleted
#
# Before state:
# -------------
#
# sonic# show running-configuration interface Eth 1/5
# !
# interface Eth1/5
# queue 0 wred-policy profile2
# queue 1 wred-policy profile1
# scheduler-policy policy2
# qos-map dscp-tc dscp_map2
# qos-map dot1p-tc dot1p_map2
# qos-map tc-queue fwd_queue_map2
# qos-map tc-pg fwd_pg_map2
# qos-map tc-dscp fwd_dscp_map2
# qos-map tc-dot1p fwd_dot1p_map2
# qos-map pfc-priority-queue pfc_queue_map1
# qos-map pfc-priority-pg pfc_pg_map1
# priority-flow-control priority 1
# priority-flow-control watchdog action drop
# priority-flow-control watchdog on detect-time 150
# priority-flow-control watchdog restore-time 250
# sonic# show running-configuration interface Eth 1/6
# !
# interface Eth1/6
# queue 0 wred-policy profile1
# scheduler-policy policy1
# qos-map dscp-tc dscp_map1
# qos-map dot1p-tc dot1p_map1
# qos-map tc-queue fwd_queue_map1
# qos-map tc-pg fwd_pg_map1
# qos-map tc-dscp fwd_dscp_map1
# qos-map tc-dot1p fwd_dot1p_map1
# qos-map pfc-priority-queue pfc_queue_map1
# qos-map pfc-priority-pg pfc_pg_map1
# priority-flow-control priority 0
# priority-flow-control asymmetric
# priority-flow-control watchdog on detect-time 100
# priority-flow-control watchdog restore-time 200
- name: Delete QoS interfaces attributes
dellemc.enterprise_sonic.sonic_interfaces:
config:
- name: Eth1/5
queues:
- id: 0
wred_profile: profile2
- id: 1
scheduler_policy: policy2
qos_maps:
dscp_fwd_group: dscp_map2
dot1p_fwd_group: dot1p_map2
fwd_group_dscp: fwd_dscp_map2
fwd_group_dot1p: fwd_dot1p_map2
fwd_group_queue: fwd_queue_map2
fwd_group_pg: fwd_pg_map2
- name: Eth1/6
pfc:
asymmetric: True
watchdog_action: drop
watchdog_detect_time: 100
watchdog_restore_time: 200
priorities:
- dot1p: 0
enable: True
- dot1p: 1
enable: True
state: deleted
# After state:
# ------------
#
# sonic# show running-configuration interface Eth 1/5
# !
# interface Eth1/5
# qos-map pfc-priority-queue pfc_queue_map1
# qos-map pfc-priority-pg pfc_pg_map1
# priority-flow-control priority 1
# priority-flow-control watchdog action drop
# priority-flow-control watchdog on detect-time 150
# priority-flow-control watchdog restore-time 250
# sonic# show running-configuration interface Eth 1/6
# !
# interface Eth1/6
# queue 0 wred-policy profile1
# scheduler-policy policy1
# qos-map dscp-tc dscp_map1
# qos-map dot1p-tc dot1p_map1
# qos-map tc-queue fwd_queue_map1
# qos-map tc-pg fwd_pg_map1
# qos-map tc-dscp fwd_dscp_map1
# qos-map tc-dot1p fwd_dot1p_map1
# qos-map pfc-priority-queue pfc_queue_map1
# qos-map pfc-priority-pg pfc_pg_map1
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
The resulting configuration from module invocation. Returned: when changed, if Sample: |
|
The generated (simulated) configuration from module invocation. Returned: when Sample: |
|
The configuration prior to the module invocation. Returned: always Sample: |
|
The set of commands pushed to the remote device. Returned: always Sample: |