Enterprise: NetworkPolicy default-deny + LimitRange + ResourceQuota

This commit is contained in:
claude 2026-02-14 10:09:08 +01:00
parent 6f4505c977
commit d137b5bdf2

View File

@ -0,0 +1,77 @@
# Default deny all network traffic in default namespace
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default-deny-all
namespace: default
spec:
podSelector: {}
policyTypes:
- Ingress
- Egress
---
# Allow nginx-test pods to receive traffic on port 8080
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-nginx-ingress
namespace: default
spec:
podSelector:
matchLabels:
app: nginx-test
policyTypes:
- Ingress
ingress:
- ports:
- port: 8080
protocol: TCP
---
# Allow all pods DNS resolution (required for K8s to work)
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-dns-egress
namespace: default
spec:
podSelector: {}
policyTypes:
- Egress
egress:
- to:
- namespaceSelector: {}
ports:
- port: 53
protocol: UDP
- port: 53
protocol: TCP
---
# Default resource limits for containers without explicit limits
apiVersion: v1
kind: LimitRange
metadata:
name: default-limits
namespace: default
spec:
limits:
- default:
cpu: "500m"
memory: "512Mi"
defaultRequest:
cpu: "100m"
memory: "128Mi"
type: Container
---
# Namespace quota — prevent resource exhaustion
apiVersion: v1
kind: ResourceQuota
metadata:
name: default-quota
namespace: default
spec:
hard:
requests.cpu: "4"
requests.memory: "8Gi"
limits.cpu: "8"
limits.memory: "16Gi"
pods: "50"