ArchSpec is a sideCard DaemonSet to enable target-arch node feature discovery for Kubernetes by leveraging Node-Feature-Discovery
Clone this repo
git clone git@github.com:archspec/archspec-feature-discovery.git
Then
buildah bud -t quay.io/<user-name>/archspec-feature-discovery:latest -f Dockerfile .
Deploy the Node-feature-Discovery with the extra option --extra-label-ns=archspec.io
, then:
$ kubectl apply -f manifests/
namespace/archspec-feature-discovery created
serviceaccount/archspec-feature-discovery created
role.rbac.authorization.k8s.io/archspec-feature-discovery created
rolebinding.rbac.authorization.k8s.io/archspec-feature-discovery created
daemonset.apps/archspec-feature-discovery created
$ kubectl get all -n archspec-feature-discovery
NAME READY STATUS RESTARTS AGE
pod/archspec-feature-discovery-ddhnq 1/1 Running 0 7m21s
pod/archspec-feature-discovery-rr9ts 1/1 Running 0 7m21s
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
daemonset.apps/archspec-feature-discovery 2 2 2 2 2 node-role.kubernetes.io/worker= 7m22
$kubectl get no -o json | jq .items[].metadata.labels |grep archspec
"archspec.io/cpu.family": "6",
"archspec.io/cpu.model": "79",
"archspec.io/cpu.target": "haswell",
"archspec.io/cpu.vendor": "GenuineIntel",
"archspec.io/cpu.family": "6",
"archspec.io/cpu.model": "79",
"archspec.io/cpu.target": "haswell",
"archspec.io/cpu.vendor": "GenuineIntel",