1
0
Fork 0
mirror of https://github.com/kubernetes-sigs/node-feature-discovery.git synced 2025-03-28 10:47:23 +00:00
Node feature discovery for Kubernetes
Find a file
Swati Sehgal a311719d1e topologyupdater: Updates based on latest changes made to CRD API
There have been recent changes made to the noderesourcetopology API
storing the proto file generated using go-to-protobuf tool and
this code inports the proto generated in the API in the topology-updater.proto
The PRs corresponding to the changes are as follows:
https://github.com/k8stopologyawareschedwg/noderesourcetopology-api/pull/9
https://github.com/k8stopologyawareschedwg/noderesourcetopology-api/pull/13

Commands used to generate topology-updater.pb.go file:

go install github.com/golang/protobuf/protoc-gen-go@v1.4.3
go mod vendor
protoc --go_opt=paths=source_relative  --go_out=plugins=grpc:. pkg/topologyupdater/topology-updater.proto -I. -Ivendor

As part of implmentation of this patch, reserved (non-allocatable) CPUs
are evaluated by performing a difference between all the CPUs on a system
(determined by using ghw) and allocatable CPUs (determined by querying
GetAllocatableResources podResource API endpoint).

When aggregator creates the NUMA zones, it will skip the zone creation if
there are no allocatable resources. In this update we creates those missing
zone with zero allocatable/available resources so we won't have holes in the
array of reported zones.

Co-Authored-by: Talor Itzhak <titzhak@redhat.com>
Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
2021-09-21 10:48:10 +01:00
.github Merge pull request from marquiz/devel/github-release-template 2021-04-06 17:24:40 -07:00
cmd topologyupdater: watch/consider only guaranteed pods for accounting 2021-09-21 10:48:10 +01:00
demo demo: make demo runnable again 2020-09-10 17:09:53 +03:00
deployment deployment: fix formatting of the worker conf sample 2021-09-17 14:25:48 +03:00
docs Fix broken link for worker-conf example 2021-09-02 11:41:03 -05:00
pkg topologyupdater: Updates based on latest changes made to CRD API 2021-09-21 10:48:10 +01:00
scripts scripts/test-infra: verify buildability of kustomize overlays 2021-08-26 19:47:25 +03:00
source topologyupdater: Bootstrap nfd-topology-updater in NFD 2021-09-21 10:47:39 +01:00
test topologyupdater: Bootstrap nfd-topology-updater in NFD 2021-09-21 10:47:39 +01:00
.dockerignore dockerignore: tidy up and update 2020-05-19 10:13:54 +03:00
.gitignore Only add kustomization.yaml in the root to .gitignore 2021-08-26 15:27:03 +01: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 Add livenessProbe via grpc to nfd-master 2021-08-18 10:23:10 -05:00
go.mod topologyupdater: Updates based on latest changes made to CRD API 2021-09-21 10:48:10 +01:00
go.sum topologyupdater: Updates based on latest changes made to CRD API 2021-09-21 10:48:10 +01:00
LICENSE Template project files 2016-07-22 22:13:48 -07:00
Makefile topologyupdater: Updates based on latest changes made to CRD API 2021-09-21 10:48:10 +01:00
OWNERS Update OWNERS file 2021-02-15 12:10:51 +00:00
README.md README: update deployment instructions to use v0.9.0 2021-08-20 09:05:40 +03: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 -k https://github.com/kubernetes-sigs/node-feature-discovery/deployment/overlays/default?ref=v0.9.0
  namespace/node-feature-discovery 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
  {
    "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",
...