node-feature-discovery
node-feature-discovery copied to clipboard
Invalid feature name 'cpu-cpuid.' warning is shown in nfd-worker pod logs
What happened: Invalid feature name 'cpu-cpuid.' warning is shown in nfd-worker pod logs What you expected to happen: Invalid feature name 'cpu-cpuid.' warning should not be shown in nfd-worker pod logs How to reproduce it (as minimally and precisely as possible): Install necessary pre-requisites e.g. git, make, podman-docker, go etc
Take the latest code from master branch git clone https://github.com/kubernetes-sigs/node-feature-discovery.git
Edit the makefile (so it doesn't use the git shasum) $ cd node-feature-discovery $ vi Makefile and save changes Replace VERSION := $(shell git describe --tags --dirty --always) with VERSION ?= '1.0.0'
$ make image
Push image to your preferred registry and deploy it
$ make deploy You should see the following: 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
Confirm master and worker pods are running fine on node-feature-discovery namespace. [Cross check recently created image is used in nfd-master deployment and nfd-worker deamonset. If not then change image to what you have recently built]
$ kubectl get pods -n node-feature-discovery NAME READY STATUS RESTARTS AGE nfd-master-845b5bb867-ql65p 1/1 Running 0 88m nfd-worker-nt855 1/1 Running 0 88m
Check pod log for nfd-worker $ kubectl logs nfd-worker-nt855 I1013 06:26:33.193306 1 component.go:36] [core][Channel #1] Channel Connectivity change to READY I1013 06:26:33.196659 1 local.go:115] starting hooks... I1013 06:26:33.198069 1 nfd-worker.go:470] starting feature discovery... W1013 06:26:33.198144 1 nfd-worker.go:523] ignoring invalid feature name 'cpu-cpuid.': [name part must consist of alphanumeric characters, '-', '' or '.', and must start and end with an alphanumeric character (e.g. 'MyName', or 'my.name', or '123-abc', regex used for validation is '([A-Za-z0-9][-A-Za-z0-9.]*)?[A-Za-z0-9]')] I1013 06:26:33.198452 1 nfd-worker.go:482] feature discovery completed I1013 06:26:33.198484 1 nfd-worker.go:563] sending labeling request to nfd-master
Anything else we need to know?:
Environment:
- Kubernetes version (use
kubectl version): -# kubectl version WARNING: This version information is deprecated and will be replaced with the output from kubectl version --short. Use --output=yaml|json to get the full version. Client Version: version.Info{Major:"1", Minor:"25", GitVersion:"v1.25.2", GitCommit:"5835544ca568b757a8ecae5c153f317e5736700e", GitTreeState:"clean", BuildDate:"2022-09-21T14:33:49Z", GoVersion:"go1.19.1", Compiler:"gc", Platform:"linux/ppc64le"} Kustomize Version: v4.5.7 Server Version: version.Info{Major:"1", Minor:"25", GitVersion:"v1.25.2", GitCommit:"5835544ca568b757a8ecae5c153f317e5736700e", GitTreeState:"clean", BuildDate:"2022-09-21T14:27:13Z", GoVersion:"go1.19.1", Compiler:"gc", Platform:"linux/ppc64le"} - Cloud provider or hardware configuration:
- OS (e.g:
cat /etc/os-release): RHEL 9 - Kernel (e.g.
uname -a): ppc64le GNU/Linux - Install tools:
- Network plugin and version (if this is a network-related bug):
- Others:
@Chandan-Abhyankar thanks for reporting this.
I don't have ppc64 HW myself so I cannot verify test this. But I suspect this would fix would fix the immediate issue: https://github.com/kubernetes-sigs/node-feature-discovery/pull/914
Ping @yselkowitz who is the author of the ppc64 cpuid support. Seems that our set of cpuid flags would need an update.
$ vi Makefile and save changes
BTW @Chandan-Abhyankar you don't need to edit the makefile, you can override stuff from the command line:
IMAGE_REGISTRY=example.com/my-registry IMAGE_TAG_NAME=test make image
IMAGE_REGISTRY=example.com/my-registry IMAGE_TAG_NAME=test make push
IMAGE_REGISTRY=example.com/my-registry IMAGE_TAG_NAME=test make deploy
See https://kubernetes-sigs.github.io/node-feature-discovery/stable/advanced/developer-guide.html#customizing-the-build