1
0
Fork 0
mirror of https://github.com/kubernetes-sigs/node-feature-discovery.git synced 2024-12-14 11:57:51 +00:00
Node feature discovery for Kubernetes
Find a file
Markus Lehtonen b2d9e15a00 apis/nfd: drop the private template caching fields
Drop the private fields – that were supposed to be used for caching parsed
templates – from the Rule type. Keep the API typedefs cleaner and
simpler. Moreover, the caching was not even used in practice,
effectively complicating code without any benefit: the way the types
are used in nfd-master creates a local copy of Rule type storing the
cached template in the copy, wasting it from any future users.

There are also other possible caveats in caching like we tried to do it.
For example the objects returned by the api lister are supposed to be
treated as read-only - in particular if we would be to modify them there
should at least be proper locking in place as nfd-master potentially
processes the same rule (the same Go object) in parallel for multiple
nodes. If any optimization like this will be pursued it should be done
properly, probably with private type(s) at the consumer's end, not
contaminating the API types.
2023-12-15 10:48:07 +02:00
.github github: add a separate issue template for patch releases 2023-09-19 14:40:23 +03:00
cmd nfd-gc: add metrics 2023-10-09 13:39:28 +00:00
demo demo: make demo runnable again 2020-09-10 17:09:53 +03:00
deployment apis/nfd: drop creation helper functions 2023-12-14 15:54:51 +02:00
docs Merge pull request #1455 from ArangoGutierrez/validation 2023-12-12 11:04:06 +01:00
examples Option to stop implicitly adding default prefix to names 2023-11-24 12:48:20 +02:00
hack Fix Usage example for prepare-release.sh 2023-04-26 11:15:18 +02:00
pkg apis/nfd: drop the private template caching fields 2023-12-15 10:48:07 +02:00
scripts Merge pull request #1455 from ArangoGutierrez/validation 2023-12-12 11:04:06 +01:00
source apis/nfd: drop creation helper functions 2023-12-14 15:54:51 +02:00
test Use non-exp maps package 2023-12-12 17:31:25 +02:00
.dockerignore dockerignore: cleanup 2023-12-08 14:48:02 +02:00
.gitignore gitignore: ignore codecov coverage report 2023-03-13 12:08:32 +02:00
cloudbuild.yaml Increase allowed image build timeout 2022-10-27 01:03:25 +03:00
code-of-conduct.md Update code-of-conduct.md 2017-12-20 14:12:51 -05:00
codecov.yml codecov: drop required minimum coverage ratio of at patch level 2023-04-28 17:00:14 +03:00
CONTRIBUTING.md Template project files 2016-07-22 22:13:48 -07:00
Dockerfile Replace gRPC health probe utility with k8s built-in health probe 2023-09-20 12:25:36 +03:00
Dockerfile_generator generate: update kube code-gen to v1.28.4 2023-11-29 18:37:19 +02:00
go.mod Use generics for maps and slices 2023-12-13 12:09:53 +02:00
go.sum go.mod: update dependencies 2023-12-11 14:42:35 +02:00
LICENSE Template project files 2016-07-22 22:13:48 -07:00
Makefile Makefile: fix e2e-testing of the full image 2023-12-12 11:25:03 +02:00
netlify.toml Add netlify configuration file 2022-09-16 00:47:49 +03:00
OWNERS OWNERS: add ArangoGutierrez as an approver 2023-04-24 12:50:10 +03:00
README.md Update readme to v0.14.3 2023-10-23 19:31:41 +03:00
SECURITY_CONTACTS Update SECURITY_CONTACTS 2020-11-19 15:10:27 -05:00
Tiltfile Update base image to Debian bullseye 2022-10-14 10:04:04 +03:00

Node Feature Discovery

Go Report Card Prow Build Prow E2E-Test

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 -k https://github.com/kubernetes-sigs/node-feature-discovery/deployment/overlays/default?ref=v0.14.3
  namespace/node-feature-discovery created
  customresourcedefinition.apiextensions.k8s.io/nodefeaturerules.nfd.k8s-sigs.io created
  serviceaccount/nfd-master created
  clusterrole.rbac.authorization.k8s.io/nfd-master created
  clusterrolebinding.rbac.authorization.k8s.io/nfd-master created
  configmap/nfd-worker-conf created
  service/nfd-master created
  deployment.apps/nfd-master created
  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'
  {
    "kubernetes.io/arch": "amd64",
    "kubernetes.io/os": "linux",
    "feature.node.kubernetes.io/cpu-cpuid.ADX": "true",
    "feature.node.kubernetes.io/cpu-cpuid.AESNI": "true",
...