目录
一、 介绍
在 Kubernetes 中,NetworkPolicy 是一种用于控制 Pod 之间网络通信的资源对象。它允许用户定义一组规则,规定哪些 Pod 可以相互通信,从而实现网络隔离和安全性。NetworkPolicy 基于标签选择器来识别应用策略的 Pod,并使用入站(Ingress)和出站(Egress)规则来控制流量,提供Pod级别和 Namespace级别网络访问控制
NetworkPolicy 的主要特点包括:
- 基于标签选择器:通过标签选择器来选择应用策略的 Pod。
- 入站和出站规则:定义允许的入站和出站流量规则。
- 命名空间级别:NetworkPolicy 作用于特定的命名空间内。
- 默认拒绝:未被显式允许的流量将被默认拒绝。
二、使用方法
要使用 NetworkPolicy,需要满足以下条件:
- 集群必须使用支持 NetworkPolicy 的网络插件,如 Calico、Cilium 等,Flannel不支持。
- 在 Pod 的元数据中添加相应的标签,用于 NetworkPolicy