Skip to content

Policy Deployment#

QoS → PDPolicy Deployments

A brief introduction to QoS

Quality of Service (QoS) is a set of technologies and mechanisms used to manage traffic prioritization, often but not exclusively used in scenarios of network congestion. A full explanation of QoS is beyond the scope of this documentation, as the concepts are often as complex as the implementation of them on various network operating systems, along with chip-specific capabilities and limitations.

The PolicyDeployment is a resource that configures IngressPolicies and EgressPolicies on a node. It specifies which interfaces follow a particular QoS policy. For example, some interfaces could be connected to a "premium" service without traffic policers, while non-premium users have bandwidth restrictions. The PolicyDeployment decides which interfaces follow which rules.

Interface types

Some hardware platforms like SR OS have different QoS capabilities for network ports (connected to other routers) compared to access ports. The PolicyDeployment resource only supports QoS policies for access interfaces. The interfaceType parameter is ignored for now.

PolicyDeployment vs PolicyAttachment#

Some parameters like the queue mapping are configured for all subinterfaces on the interface: this is done by the PolicyDeployment resource.

Other parameters such as rewrite policies and classifiers are configured on the sub-interface level: this is done by the PolicyAttachment.

A PolicyAttachment automatically emits a PolicyDeployment as a derived resource.

Dependencies#

IngressPolicy#

The PolicyDeployment deploys QoS policies onto a node. If IngressPolicies are used, these must be created first.

EgressPolicy#

The PolicyDeployment deploys QoS policies onto a node. If EgressPolicies are used, these must be created first.

Referenced resources#

The PolicyDeployment does not reference any other EDA resources.

Examples#

apiVersion: qos.eda.nokia.com/v2
kind: PolicyDeployment
metadata:
  name: edgesubinterface-my-datacenter
  namespace: scale-across
spec:
  ingressPolicy: edgesubinterface-ingress-my-datacenter
  interfaces:
    - dc1-leaf-1-ethernet-1-6
    - dc1-leaf-1-ethernet-1-7
    - dc1-leaf-2-ethernet-1-1
    - dc1-leaf-2-ethernet-1-2
cat << 'EOF' | kubectl apply -f -
apiVersion: qos.eda.nokia.com/v2
kind: PolicyDeployment
metadata:
  name: edgesubinterface-my-datacenter
  namespace: scale-across
spec:
  ingressPolicy: edgesubinterface-ingress-my-datacenter
  interfaces:
    - dc1-leaf-1-ethernet-1-6
    - dc1-leaf-1-ethernet-1-7
    - dc1-leaf-2-ethernet-1-1
    - dc1-leaf-2-ethernet-1-2
EOF

Custom Resource Definition#

To browse the Custom Resource Definition go to crd.eda.dev.

PolicyDeployment

qos.eda.nokia.com / v2

SPEC

PolicyDeploymentSpec defines the desired state of PolicyDeployment

  • #
  • #
  • #
  • #
  • #
  • #
  • #

STATUS

PolicyDeploymentStatus defines the observed state of PolicyDeployment