Networking 允许来自pod标签等于pod标签的流量
我正在尝试在kubernetes中设置一个网络策略,其中一组具有相同密钥标签值的普通POD允许在一个端口上拥有流量 假设有:Networking 允许来自pod标签等于pod标签的流量,networking,kubernetes,kubernetes-networkpolicy,Networking,Kubernetes,Kubernetes Networkpolicy,我正在尝试在kubernetes中设置一个网络策略,其中一组具有相同密钥标签值的普通POD允许在一个端口上拥有流量 假设有: Pod A: labels: meshId="d5ea1b48" 及 以及更多具有相同标签meshId=d5ea1b48的吊舱。 mesh表示一个mesh网络,其中只允许所有包含的pod在一个端口上具有流量 我的目标用yaml解释: kind: NetworkPolicy apiVersion: networking.k8s.io/v1 metadata: n
Pod A:
labels:
meshId="d5ea1b48"
及
以及更多具有相同标签meshId=d5ea1b48的吊舱。
mesh表示一个mesh网络,其中只允许所有包含的pod在一个端口上具有流量
我的目标用yaml解释:
kind: NetworkPolicy
apiVersion: networking.k8s.io/v1
metadata:
name: example
spec:
podSelector:
matchLabels:
meshId: %meshId of from-pod%
ingress:
- ports:
- port 1234
- protocol: TCP
- from:
- podSelector:
matchLabels:
meshId: %meshId of to-pod%
因此,如果我没有弄错的话,这个配置会说:我想为那些没有相同meshId的人拒绝1234端口上的传入流量
是否有一种方法可以一次性为所有可能的MESHID创建kubernetes网络策略?这样的解决方案在yaml中会是什么样子
我不想为每个新的meshId创建一个新的NetworkPolicy,因为将有大量的NetworkPolicy,我还认为如果有超过50.000个NetworkPolicy,这将损害集群网络的性能。无法以您提出的方式概括标签选择器。请注意,网络策略旨在强化基础,以便只有真正的流量才能进出 我还想指出一个事实,那就是为什么你最终会得到50000美元的额外保单。这意味着您的POD选择器策略不好。考虑改变这一点,而不是相反。你就快把这件事做完了
kind: NetworkPolicy
apiVersion: networking.k8s.io/v1
metadata:
name: example
spec:
podSelector:
matchLabels:
meshId: value1
ingress:
- ports:
- port 1234
- protocol: TCP
- from:
- podSelector:
matchLabels:
meshId: value1
kind: NetworkPolicy
apiVersion: networking.k8s.io/v1
metadata:
name: example
spec:
podSelector:
matchLabels:
meshId: value1
ingress:
- ports:
- port 1234
- protocol: TCP
- from:
- podSelector:
matchLabels:
meshId: value1