Changelog
Node-feature-discovery was migrated into a new repository under the kubernetes-sigs organization in Github (#175). Related to the migration, the final container image registry/repo hasn't been dediced yet (#177) – for this release we still use the old repo.
Major changes
- Split NFD into client and server (#209)
- Changes in labels:
- NFD label namespace was changed to
feature.node.kubernetes.io/
(#176)nfd-
prefix was dropped from all feature labels- NFD version label (
feature.node.kubernetes.io/node-feature-discovery.version
) was replaced by an annotation (nfd.node.kubernetes.io/version
)
- network SRIOV labels were changed (#173):
network-sriov
->network-sriov.capable
network-sriov-configured
->network-sriov.configured
- selinux detection was moved to kernel feature source
selinux
->kernel-selinux.enabled
- cpuid, pstate and RDT labels moved under cpu feature source (#217)
cpuid-<cpuid flag>
->cpu-cpuid.<cpuid flag>
pstate-turbo
->cpu-pstate.turbo
rdt-<rdt feature>
->cpu-rdt.<rdt feature>
- NFD label namespace was changed to
- Support for config file (#169). Currently with three configurable feature sources i.e. cpu (#224), kernel (#157) and pci (#168)
- Support for non-binary labels, with arbitrary values other than plain
true
- PCI device detection (#168)
- Kernel version detection (#157)
- Kernel config option detection (#146)
- Support for custom feature-detector hooks (#144)
- Support OS version detection (#149, #211)
- Detection of hardware multithreading, such as Intel Hyper-Threading Technology (#147)
- Arm64 support for CPUID detection (#194)
- Validation of feature label names and values (#199, #219)
- Detection of NVDIMM devices (#214)
- Get labels by reading from file in
local
source (#228) - Detection of Intel SST-BF (Speed Select Technology - Base Frequency) (#235)
- Make it possible to create feature labels in non-default namespace (#231). Currently possible for using the local source (hooks and files).
Miscellaneous
- Template specs converted from json to yaml
- Documentation updates fixes
Deployment
For complete documentation see the v0.4.0 release
For quick start, you can use the provided template specs to deploy the NFD release image with the default configuration in the default namespace:
export NFD_VERSION=v0.4.0
kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/node-feature-discovery/$NFD_VERSION/nfd-master.yaml.template
kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/node-feature-discovery/$NFD_VERSION/nfd-worker-daemonset.yaml.template