diff --git a/infrastructure/kustomization.yaml b/infrastructure/kustomization.yaml
index 1957d49355a9a00dbe5f20a7cad281c102ebbaed..ccd7ac76c3473c660735824e6293eeffca0c0bda 100644
--- a/infrastructure/kustomization.yaml
+++ b/infrastructure/kustomization.yaml
@@ -8,3 +8,4 @@ resources:
   - cert-manager
   - prometheus
   - ingress-nginx
+  - node-features
diff --git a/infrastructure/node-features/kustomization.yaml b/infrastructure/node-features/kustomization.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..6b558abccb1d917682239a6f770ca8a9a87f3ba7
--- /dev/null
+++ b/infrastructure/node-features/kustomization.yaml
@@ -0,0 +1,7 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+namespace: node-features-system
+resources:
+  - namespace.yaml
+  - repository.yaml
+  - release.yaml
diff --git a/infrastructure/node-features/namespace.yaml b/infrastructure/node-features/namespace.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..2d112c5bbfb53236ea2758d1072b1cd816c399d8
--- /dev/null
+++ b/infrastructure/node-features/namespace.yaml
@@ -0,0 +1,7 @@
+apiVersion: v1
+kind: Namespace
+metadata:
+  name: node-features-system
+  labels:
+    name: node-features-system
+    kyverno.shivering-isles.com/class: "system"
diff --git a/infrastructure/node-features/release.yaml b/infrastructure/node-features/release.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..9b6fc259639cd490b0d0c546abf31d004276deef
--- /dev/null
+++ b/infrastructure/node-features/release.yaml
@@ -0,0 +1,23 @@
+apiVersion: helm.toolkit.fluxcd.io/v2beta1
+kind: HelmRelease
+metadata:
+  name: node-feature-discovery
+  namespace: node-features-system
+spec:
+  releaseName: node-feature-discovery
+  chart:
+    spec:
+      chart: node-feature-discovery
+      sourceRef:
+        kind: HelmRepository
+        name: node-feature-discovery
+      version: 0.10.0
+  interval: 5m
+  values:
+    tls:
+      enable: true
+      certManager: true
+  install:
+    crds: CreateReplace
+  upgrade:
+    crds: CreateReplace
diff --git a/infrastructure/node-features/repository.yaml b/infrastructure/node-features/repository.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..2777542a973842158e43ae775dd727043901296b
--- /dev/null
+++ b/infrastructure/node-features/repository.yaml
@@ -0,0 +1,7 @@
+apiVersion: source.toolkit.fluxcd.io/v1beta1
+kind: HelmRepository
+metadata:
+  name: node-feature-discovery
+spec:
+  interval: 30m
+  url: https://kubernetes-sigs.github.io/node-feature-discovery/charts