如何验证网络策略是否应用于特定的 Pod?

how to validate that networkpolicy was applied to specific pod?

每个 doc/tutorial 仅说明如何应用网络策略,但其中 none 实际上说明了如何验证您的策略是否已应用,如何执行?任何有用的网络策略管理工具?

将 NetworkPolicy 资源视为 OS 中的防火墙规则,如何验证是否有任何防火墙规则应用于 OS 中的应用程序 运行?只能通过分析防火墙规则,需要防火墙知识。 所以在Kubernetes集群中你也可以通过描述来分析NetworkPolicy

kubectl get networkpolicy
kubectl describe networkpolicy <networkpolicy-name>

你还需要了解podSelectorpolicyTypes等NetworkPolicy的组件,如Ingress、Engress等。

例如,如果您的 NetworkPolicy podSelectorrole=db,您可以通过

搜索与此标签匹配的 pods
kubectl get pods -l 'role=db'

有关 NetworkPolicy 的更多信息,您可以查看 Official Documentation

同样对于标签和选择器检查这个Documentation