k8snetworkplumbingwg/sriov-cni

SRIOV-CNI failed to configure VF "failed to set vf 0 vlan configuration - id 0, qos 0 and proto 802.1q: operation not supported"

zhutong196 opened this issue · 8 comments

##System: centos:8

device version

k8snetworkplumbingwg/sriov-network-device-plugin:latest-amd64

multus-cni configuration

[root@xxx intel]# ls /etc/cni/net.d/
00-multus.conf  10-flannel.conflist  multus.d

[root@xxx intel]# more sriov-cm.yaml
apiVersion: v1
kind: ConfigMap
metadata:
  name: sriovdp-config
  namespace: kube-system
data:
  config.json: |
    {
        "resourceList": [{
                "resourceName": "mlnx_sriov",
                "resourcePrefix": "mellanox.com",
                "selectors": {
                    "vendors": ["15b3"],
                    "devices": ["101c"],
                    "drivers": ["mlx5_core"]
                }
            }
        ]
    }

my pod yaml

[root@xxx intel]# more test-sriov-pod.yaml
apiVersion: v1
kind: Pod
metadata:
  name: ib-sriov-pod
  annotations:
    v1.multus-cni.io/default-network: default/sriov-network
   #k8s.v1.cni.cncf.io/networks: sriov-network
spec:
  #nodeName: nma08-101-c-06-sev-nf5468-04u09
  nodeName: nma08-101-c-05-sev-nf5468-04u14
  containers:
  - name: testpod
    command:
    - tail
    - -f
    - /dev/null
    image: telecom.io/busybox
    resources:
      requests:
        mellanox.com/mlnx_sriov: '1'
      limits:
        mellanox.com/mlnx_sriov: '1'

vf info

[root@xxx~]# lspci -nn |grep Mella
35:00.0 Infiniband controller [0207]: Mellanox Technologies MT28908 Family [ConnectX-6] [15b3:101b]
35:00.1 Infiniband controller [0207]: Mellanox Technologies MT28908 Family [ConnectX-6 Virtual Function] [15b3:101c]
9c:00.0 Infiniband controller [0207]: Mellanox Technologies MT28908 Family [ConnectX-6] [15b3:101b]
9c:00.1 Infiniband controller [0207]: Mellanox Technologies MT28908 Family [ConnectX-6 Virtual Function] [15b3:101c]

###cause
image

do you get the same error if you manually run "ip link set {link_name} vf 0 vlan 0 qos 0 proto 802.1q"?
does it work if you set a vlan id different than zero?

do you get the same error if you manually run "ip link set {link_name} vf 0 vlan 0 qos 0 proto 802.1q"? does it work if you set a vlan id different than zero?

[root@NMA08-101-C-05-SEV-NF5468-04U14 ~]# ip link set ib2 vf 0 vlan 0 qos 0 proto 802.1q
RTNETLINK answers: Operation not supported
[root@NMA08-101-C-05-SEV-NF5468-04U14 ~]# ip link set ib2 vf 0 vlan 1 qos 0 proto 802.1q
RTNETLINK answers: Operation not supported
[root@NMA08-101-C-05-SEV-NF5468-04U14 ~]# ip link set ib2 vf 0 vlan 100 qos 0 proto 802.1q
RTNETLINK answers: Operation not supported

Because I am not very familiar with vf operations, I would appreciate it if you could provide me with directions and ideas for troubleshooting
image

perhaps you need to update the firmware of you card. Maybe @adrianchiris knows what the issue is.

It seem like the NIC port is InfiniBand and not Ethernet.
What is you fabric InfiniBand or Ethernet?

It seem like the NIC port is InfiniBand and not Ethernet. What is you fabric InfiniBand or Ethernet?

InfineBand mode,The main purpose of my testing is to test the use of ib networks in containers

perhaps you need to update the firmware of you card. Maybe @adrianchiris knows what the issue is.

ok, Let me try update my firmware of my card

It seem like the NIC port is InfiniBand and not Ethernet. What is you fabric InfiniBand or Ethernet?

InfineBand mode,The main purpose of my testing is to test the use of ib networks in containers

In that case setting vlan and qos won't work on ib interface. (it work only on ethernet)
You should use ib-sriov-cni [1] which can do GUID configuration if required.

[1] - https://github.com/k8snetworkplumbingwg/ib-sriov-cni/

It seem like the NIC port is InfiniBand and not Ethernet. What is you fabric InfiniBand or Ethernet?

InfineBand mode,The main purpose of my testing is to test the use of ib networks in containers

In that case setting vlan and qos won't work on ib interface. (it work only on ethernet) You should use ib-sriov-cni [1] which can do GUID configuration if required.

[1] - https://github.com/k8snetworkplumbingwg/ib-sriov-cni/

oh , I get it Thanks