From 2d0ded00eb1260955d5b9fc55525438c296122dc Mon Sep 17 00:00:00 2001 From: Dreaded_X Date: Wed, 26 Feb 2025 03:27:54 +0100 Subject: [PATCH] Added NodeFeatureRule to automatically add network adapter label to nodes --- .../infra/node-feature-discovery-rules.yaml | 14 ++++++++++++++ .../kustomization.yaml | 4 ++++ .../network-adapter.yaml | 16 ++++++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 clusters/titan.lan.huizinga.dev/infra/node-feature-discovery-rules.yaml create mode 100644 infra/node-feature-discovery-rules/kustomization.yaml create mode 100644 infra/node-feature-discovery-rules/network-adapter.yaml diff --git a/clusters/titan.lan.huizinga.dev/infra/node-feature-discovery-rules.yaml b/clusters/titan.lan.huizinga.dev/infra/node-feature-discovery-rules.yaml new file mode 100644 index 0000000..4b34bc6 --- /dev/null +++ b/clusters/titan.lan.huizinga.dev/infra/node-feature-discovery-rules.yaml @@ -0,0 +1,14 @@ +apiVersion: kustomize.toolkit.fluxcd.io/v1 +kind: Kustomization +metadata: + name: node-feature-discovery-rules + namespace: flux-system +spec: + interval: 15m + path: ./infra/node-feature-discovery-rules + prune: true + timeout: 2m + sourceRef: + kind: GitRepository + name: flux-system + wait: true diff --git a/infra/node-feature-discovery-rules/kustomization.yaml b/infra/node-feature-discovery-rules/kustomization.yaml new file mode 100644 index 0000000..a5a6e6c --- /dev/null +++ b/infra/node-feature-discovery-rules/kustomization.yaml @@ -0,0 +1,4 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - ./network-adapter.yaml diff --git a/infra/node-feature-discovery-rules/network-adapter.yaml b/infra/node-feature-discovery-rules/network-adapter.yaml new file mode 100644 index 0000000..65d69a0 --- /dev/null +++ b/infra/node-feature-discovery-rules/network-adapter.yaml @@ -0,0 +1,16 @@ +apiVersion: nfd.k8s-sigs.io/v1alpha1 +kind: NodeFeatureRule +metadata: + name: network-adapter +spec: + rules: + - name: "Network interface label" + labelsTemplate: | + {{ range .network.device }}network-adapter={{ .name }} + {{ end }} + matchFeatures: + - feature: network.device + matchExpressions: + "name": + op: InRegexp + value: ["enp.s0"]