apiVersion: policy.networking.k8s.io/v1alpha1
kind: AdminNetworkPolicy
metadata:
name: sample-anp-deny-pass-rules (1)
spec:
priority: 50 (2)
subject:
namespaces:
matchLabels:
kubernetes.io/metadata.name: example.name (3)
ingress: (4)
- name: "deny-all-ingress-tenant-1" (5)
action: "Deny"
from:
- pods:
namespaceSelector:
matchLabels:
custom-anp: tenant-1
podSelector:
matchLabels:
custom-anp: tenant-1 (6)
egress:(7)
- name: "pass-all-egress-to-tenant-1"
action: "Pass"
to:
- pods:
namespaceSelector:
matchLabels:
custom-anp: tenant-1
podSelector:
matchLabels:
custom-anp: tenant-1
1 | 为您的ANP指定一个名称。 |
2 | spec.priority 字段在一个集群中支持最大100个ANP,其值范围为0-99 。值越低,优先级越高,因为该范围是从最低值到最高值按顺序读取的。由于无法保证在相同优先级下创建ANP时哪个策略优先,因此请为ANP设置不同的优先级,以便优先级是确定的。 |
3 | 指定要应用ANP资源的命名空间。 |
4 | ANP同时具有入站和出站规则。spec.ingress 字段的ANP规则为action 字段接受Pass 、Deny 和Allow 值。 |
5 | 为ingress.name 指定一个名称。 |
6 | 指定podSelector.matchLabels 以选择由namespaceSelector.matchLabels 选择的命名空间中的Pod作为入站对等体。 |
7 | ANP同时具有入站和出站规则。spec.egress 字段的ANP规则为action 字段接受Pass 、Deny 和Allow 值。 |