diff --git a/infrastructure/metallb/kustomization.yaml b/infrastructure/metallb/kustomization.yaml
index 16a58318b984ff57e96b23e66f64fe7797a4d2d8..e6653c792b064867795b8304b4dc47babe3403dc 100644
--- a/infrastructure/metallb/kustomization.yaml
+++ b/infrastructure/metallb/kustomization.yaml
@@ -5,3 +5,7 @@ resources:
   - namespace.yaml
   - repository.yaml
   - release.yaml
+  - ../../shared/networkpolicies/allow-from-same-namespace.yaml
+  - ../../shared/networkpolicies/allow-from-monitoring.yaml
+patchesStrategicMerge:
+  - networkpolicy.yaml
diff --git a/infrastructure/metallb/networkpolicy.yaml b/infrastructure/metallb/networkpolicy.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..11f859b7faba56a738fbb971c9c6fb4fc6955e26
--- /dev/null
+++ b/infrastructure/metallb/networkpolicy.yaml
@@ -0,0 +1,10 @@
+---
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+  name: allow-from-monitoring
+spec:
+  podSelector:
+    matchLabels:
+      app.kubernetes.io/instance: metallb
+      app.kubernetes.io/name: metallb