1
0
Fork 0
mirror of https://github.com/kubernetes-sigs/node-feature-discovery.git synced 2025-03-28 02:37:11 +00:00
Node feature discovery for Kubernetes
Find a file
Markus Lehtonen bb1e4c60fb nfd-master: use namespaced label and annotation names internally
For historical reasons the labels in the default nfd namespace have been
internally represented without the namespace part. I.e. instead of
"feature.node.kubernetes.io/foo" we just use "foo". NFD worker uses this
representation, too, both internally and over the gRPC requests. The
same scheme has been used for annotations.

This patch changes NFD master to use fully namespaced label and
annotation names internally. This hopefully makes the code a bit more
understandable. It also addresses some corner cases making the handling
of label names consistent, making it possible to use both "truncated"
and fully namespaced names over the gRPC interface (and in the
annotations).
2020-11-24 12:45:06 +02:00
.github docs: specify container image in config 2020-11-20 17:00:19 +02:00
cmd nfd-master: use namespaced label and annotation names internally 2020-11-24 12:45:06 +02:00
demo demo: make demo runnable again 2020-09-10 17:09:53 +03:00
docs Add nfd-worker-conf ConfigMap to deployment templates 2020-11-23 18:49:52 +02:00
pkg nfd-master: use namespaced label and annotation names internally 2020-11-24 12:45:06 +02:00
scripts Add nfd-worker-conf ConfigMap to deployment templates 2020-11-23 18:49:52 +02:00
source kernel: more agressively sanitize full kernel version 2020-11-23 19:04:12 +02:00
test nfd-master: use namespaced label and annotation names internally 2020-11-24 12:45:06 +02:00
.dockerignore dockerignore: tidy up and update 2020-05-19 10:13:54 +03:00
.gitignore Fix a thing or two under test 2020-11-20 09:22:29 -05:00
cloudbuild.yaml cloudbuild.yaml: use staging container image repo 2020-09-04 08:46:03 +03:00
code-of-conduct.md Update code-of-conduct.md 2017-12-20 14:12:51 -05:00
CONTRIBUTING.md Template project files 2016-07-22 22:13:48 -07:00
Dockerfile Container base image version bump: 2020-11-20 16:39:18 -05:00
go.mod Go 1.15 2020-11-18 09:38:13 -05:00
go.sum Update k8s dependencies to 1.19.4 2020-11-18 13:09:13 +02:00
LICENSE Template project files 2016-07-22 22:13:48 -07:00
Makefile Add nfd-worker-conf ConfigMap to deployment templates 2020-11-23 18:49:52 +02:00
nfd-daemonset-combined.yaml.template Add nfd-worker-conf ConfigMap to deployment templates 2020-11-23 18:49:52 +02:00
nfd-master.yaml.template Change deployment templates to point to staging image 2020-11-02 17:05:39 +02:00
nfd-prune.yaml.template docs: instructions for uninstallation and operator usage 2020-10-29 14:08:16 +02:00
nfd-worker-daemonset.yaml.template Add nfd-worker-conf ConfigMap to deployment templates 2020-11-23 18:49:52 +02:00
nfd-worker-job.yaml.template Add nfd-worker-conf ConfigMap to deployment templates 2020-11-23 18:49:52 +02:00
nfd-worker.conf.example usb: Add support for USB device discovery 2020-05-20 16:18:39 +02:00
OWNERS OWNERS: drop balajismaniam 2020-11-19 21:28:53 +02:00
README.md README: fix link to Github pages 2020-10-30 13:37:50 +02:00
SECURITY_CONTACTS Update SECURITY_CONTACTS 2020-11-19 15:10:27 -05:00

Node Feature Discovery

Go Report Card Prow Build

Welcome to Node Feature Discovery a Kubernetes add-on for detecting hardware features and system configuration!

See our Documentation for detailed instructions and reference

Quick-start the short-short version

kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/node-feature-discovery/v0.6.0/nfd-master.yaml.template
  namespace/node-feature-discovery created
...

kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/node-feature-discovery/v0.6.0/nfd-worker-daemonset.yaml.template
  daemonset.apps/nfd-worker created

kubectl -n node-feature-discovery get all
  NAME                              READY   STATUS    RESTARTS   AGE
  pod/nfd-master-555458dbbc-sxg6w   1/1     Running   0          56s
  pod/nfd-worker-mjg9f              1/1     Running   0          17s
...

$ kubectl get no -o json | jq .items[].metadata.labels
  {
    "beta.kubernetes.io/arch": "amd64",
    "beta.kubernetes.io/os": "linux",
    "feature.node.kubernetes.io/cpu-cpuid.ADX": "true",
    "feature.node.kubernetes.io/cpu-cpuid.AESNI": "true",
...