diff --git a/infrastructure/coredns/kustomization.yaml b/infrastructure/coredns/kustomization.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..53a3b2384981414f12bf009fc7fd617fb5f3c46e
--- /dev/null
+++ b/infrastructure/coredns/kustomization.yaml
@@ -0,0 +1,5 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+namespace: kube-system
+resources:
+  - poddisruptionbudget.yaml
diff --git a/infrastructure/coredns/poddisruptionbudget.yaml b/infrastructure/coredns/poddisruptionbudget.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..ee1521c935755730c4982f658de6cade6e5ed242
--- /dev/null
+++ b/infrastructure/coredns/poddisruptionbudget.yaml
@@ -0,0 +1,10 @@
+apiVersion: policy/v1
+kind: PodDisruptionBudget
+metadata:
+  name: coredns
+  namespace: kube-system
+spec:
+  minAvailable: 1
+  selector:
+    matchLabels:
+      k8s-app: kube-dns
diff --git a/infrastructure/kustomization.yaml b/infrastructure/kustomization.yaml
index c95fc467a728343c112714fd3bb5a34bf24ae410..1957d49355a9a00dbe5f20a7cad281c102ebbaed 100644
--- a/infrastructure/kustomization.yaml
+++ b/infrastructure/kustomization.yaml
@@ -1,6 +1,7 @@
 apiVersion: kustomize.config.k8s.io/v1beta1
 kind: Kustomization
 resources:
+  - coredns
   - kyverno
   - firewall
   - metallb