如何为Kubernetes中除特定标签Pod外的所有Pod应用NetworkPolicy
如何将NetworkPolicy应用于Kubernetes中除特定标签Pod外的所有Pod
完全可以实现,只需修改podSelector部分,通过matchExpressions配合NotIn操作符,就能选中所有不带有指定标签的Pod。
修改后的NetworkPolicy配置如下:
apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: standard-allow-ingress spec: policyTypes: - Ingress podSelector: matchExpressions: - key: app operator: NotIn values: - foo ingress: - from: - podSelector: {} - ipBlock: cidr: 0.0.0.0/0
关键修改说明:
- 用
matchExpressions替代原有的matchLabels,通过NotIn操作符排除带有app: foo标签的Pod key指定要匹配的标签键,values列出需要排除的标签值
该配置会对所有不带有app: foo标签的Pod生效,允许它们接收来自集群内任意Pod以及外部任意IP的Ingress流量。
内容的提问来源于stack exchange,提问作者Vishwanath Joshi
相关产品推荐
相关产品推荐

