node-feature-discovery helm

Node Feature Discovery is a Kubernetes add-on that helps automate the discovery and configuration of node features such as CPU, memory, and network interfaces.

Most people in k8s at home use Node Feature Discovery to ensure that pods that need video transcoding capabilities are running on a node with an Intel GPU (which has excellent video transcoding capabilities). But also for detecting a Zigbee/Z-Wave USB sticks.

For example, the following code would guarantee that a node will run on a Node with Intel GPU:

affinity:
  nodeAffinity:
    requiredDuringSchedulingIgnoredDuringExecution:
      nodeSelectorTerms:
        - matchExpressions:
          - key: feature.node.kubernetes.io/custom-intel-gpu
            operator: In
            values:
              - "true"

Node Feature Discovery, would figure out a node has an Intel GPU and add the feature.node.kubernetes.io/custom-intel-gpu: true label.

More popular helm chart found

node-feature-discovery from kubernetes-sigs is more popular with 59 repositories.

Install

Install with:

helm repo add node-feature-discovery oci://registry.k8s.io/nfd/charts/
helm install node-feature-discovery node-feature-discovery/node-feature-discovery -f values.yaml

Examples

See examples from other people.

Top Repositories (3 out of 8)

NameRepoStarsVersionTimestamp
node-feature-discoveryJJGadgets/Biohazard910.18.315 hours ago
node-feature-discoverygabe565/home-ops380.20.13 days ago
node-feature-discoveryanthr76/infra1070.20.13 days ago

Values

See the most popular values for this chart:

KeyTypes
boolean
string
worker.config.core.labelSources[] (2)
- custom
- cpu
- pci
- usb
- system
string
string
string
string
string
string
string
string
worker.config.sources.custom[].matchFeatures[].feature (1)
kernel.loadedmodule
kernel.loadedmodule
kernel.loadedmodule
cpu.cpuid
system.osrelease
string
string
string
string
string
string
worker.config.sources.custom[].name (1)
e1000
e1000e
mlx4
baremetal
disable-nvidia-toolkit-on-talos
string
string
string
string
boolean
boolean
string
string
string
boolean
string
string
string
number
string
string
string
string
string
string
string
boolean
number
boolean
string
master.tolerations[].key (1)
node-role.kubernetes.io/control-plane
llm.internal
string
string
string
boolean
string
string
string