我在官方docs中找不到NetworkPolicy
是否阻止NodePort
的入口流量。
ingress:
- from:
- podSelector:
matchLabels:
role: frontend
考虑到上面的NetworkPolicy-期望它会阻止到我的名称空间内的NodePort
型服务的任何进入流量吗?
如果是这样,如何允许此类流量进入我的名称空间? ipBlock
会解决吗?
答案 0 :(得分:2)
Kubernetes NetworkPolicies是否阻止NodePort流量?
不是真的。
正如docs中所说:“ 是有关 pods ... 组的规范”。基本上,它们适用于Pod或Pod组。在Kubernetes中,NodePort
被定义为Service的一种类型。
您可以限制网络流量,将网络策略应用于您的名称空间,并如前所述指定 ipBlock 。这将专门限制流量到您的Pod,但不限制到NodePort。 (这可能就是您所需要的全部)
要限制对NodePorts的通信,您将不得不使用替代的外部解决方案,这实际上取决于您的设置。例如,如果您使用的是AWS之类的云提供商,则可以使用security groups。
或者,GCP为Google Cloud Armor提供了一个后端配置,该后端配置可让您控制到服务/入口的流量。