我的k8集群中有多个名称空间。我想要的是开发名称空间中的Pod可以与其他名称空间中的所有其他Pod通信,但是不应该与生产名称空间中的资源通信。
在这种情况下,我找不到文档。否认所有这样的政策
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default-deny-egress
spec:
podSelector: {}
policyTypes:
- Egress
- Ingress
,但适用于同一名称空间中的pod级别。如何修改它以满足我的要求?
答案 0 :(得分:2)
参考文档here
使用environment=dev
在生产环境中使用environment=prod
然后您可以具有以下网络策略
environment=prod
的命名空间的Pod流量白名单
如下
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: access-nginx
spec:
podSelector: {}
ingress:
- from:
- namespaceSelector:
matchLabels:
environment: "prod"