
此策略拒绝所有没有 Network Policy 的命名空间中的 Pods 的入站连接。
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default-deny-ingress
spec:
podSelector: {}
policyTypes:
- Ingress
只允许 billing 命名空间的 Pods 访问 database 命名空间中带有 app=database 标签的 Pods。
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-billing-to-database
spec:
podSelector:
matchLabels:
app: database
ingress:
- from:
- namespaceSelector:
matchLabels:
project: billing
只允许带有 role=frontend 标签的 Pods 访问带有 app=api-server 标签的 Pods。
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-frontend-to-api
spec:
podSelector:
matchLabels:
app: api-server
ingress:
- from:
- podSelector:
matchLabels:
role: frontend
通过这些策略,你可以看到 Network Policies 如何提供细粒度的网络访问控制,以确保 Kubernetes 环境的安全性。