diff --git a/infrastructure/prometheus/kustomization.yaml b/infrastructure/prometheus/kustomization.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..77c66d9c9fd9b5b4c4ea64ab34ce5cbe25e8df79
--- /dev/null
+++ b/infrastructure/prometheus/kustomization.yaml
@@ -0,0 +1,7 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+namespace: cert-manager
+resources:
+  - namespace.yaml
+  - repository.yaml
+  - release.yaml
diff --git a/infrastructure/prometheus/namespace.yaml b/infrastructure/prometheus/namespace.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..90d12efda293fe61f980c2914b5d8a121200db0f
--- /dev/null
+++ b/infrastructure/prometheus/namespace.yaml
@@ -0,0 +1,6 @@
+apiVersion: v1
+kind: Namespace
+metadata:
+  name: monitoring
+  labels:
+    name: monitoring
diff --git a/infrastructure/prometheus/release.yaml b/infrastructure/prometheus/release.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..b2fa36342eee2b92f061330f6fb1d8402a211948
--- /dev/null
+++ b/infrastructure/prometheus/release.yaml
@@ -0,0 +1,15 @@
+apiVersion: helm.toolkit.fluxcd.io/v2beta1
+kind: HelmRelease
+metadata:
+  name: kube-prometheus
+  namespace: monitoring
+spec:
+  releaseName: monitoring
+  chart:
+    spec:
+      chart: kube-prometheus-stack
+      sourceRef:
+        kind: HelmRepository
+        name: prometheus-community
+      version: 19.0.2
+  interval: 5m
diff --git a/infrastructure/prometheus/repository.yaml b/infrastructure/prometheus/repository.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..64a1a415e48750aa07a2aae0fdc3cc03004b620a
--- /dev/null
+++ b/infrastructure/prometheus/repository.yaml
@@ -0,0 +1,7 @@
+apiVersion: source.toolkit.fluxcd.io/v1beta1
+kind: HelmRepository
+metadata:
+  name: prometheus-community
+spec:
+  interval: 30m
+  url: https://prometheus-community.github.io/helm-charts