πŸ“šBook Signing at KubeCon EU 2026Meet us at Booking.com HQ (Mon 18:30-21:00) & vCluster booth #521 (Tue 24 Mar, 12:30-1:30pm) β€” free book giveaway!RSVP Booking.com Event
Troubleshooting advanced ⏱ 30 minutes K8s 1.28+

Fix 'No Supported NIC Is Selected' in SR-IOV

Diagnose SR-IOV operator webhook rejections by validating node state, label selectors, PF eligibility, and SriovNetworkNodePolicy configuration.

By Luca Berton β€’ β€’ πŸ“– 5 min read

πŸ’‘ Quick Answer: When SriovNetworkNodePolicy is denied with no supported NIC is selected, check SriovNetworkNodeState, ensure your selector matches real PFs, and confirm selected interfaces are eligible (not consumed by host networking rules).

This admission error means the operator cannot map your policy selector to eligible interfaces in node state.

1) Verify Node State Exists

oc -n openshift-sriov-network-operator get sriovnetworknodestate

If no node states exist, inspect operator config and config-daemon health.

2) Validate Selected Interfaces

oc -n openshift-sriov-network-operator get sriovnetworknodestate <node> -o json \
  | jq '.status.interfaces[] | {name,pciAddress,vendor,deviceID}'

Confirm policy selectors (pfNames, rootDevices, vendor, deviceID) match these values.

3) Check Webhook-Relevant Eligibility

oc -n openshift-sriov-network-operator get sriovnetworknodestate <node> -o yaml

Inspect fields related to support or eligibility and verify chosen PFs are suitable.

4) Review Config Daemon Logs

oc -n openshift-sriov-network-operator logs ds/sriov-network-config-daemon --tail=300

Look for discovery errors, permission issues, or selector mismatch indicators.

Common Causes

  • Typo in rootDevices PCI address.
  • Selector too broad (vendor only) captures unsupported or undesired interfaces.
  • Node not matched by policy nodeSelector.
  • Node state not created because operator/controller config is wrong.

Recovery Pattern

  1. Narrow selector to explicit rootDevices.
  2. Reapply node policy.
  3. Confirm openshift.io/<resourceName> appears in node allocatable.
#sriov #troubleshooting #webhook #openshift #nics
Luca Berton
Written by Luca Berton

Principal Solutions Architect specializing in Kubernetes, AI/GPU infrastructure, and cloud-native platforms. Author of Kubernetes Recipes and creator of CopyPasteLearn courses.

Kubernetes Recipes book cover

Want More Kubernetes Recipes?

This recipe is from Kubernetes Recipes, our 750-page practical guide with hundreds of production-ready patterns.

Luca Berton Ansible Pilot Ansible by Example Open Empower K8s Recipes Terraform Pilot CopyPasteLearn ProteinLens