首页/云/Kubernetes 速查/NetworkPolicy 网络策略基础
网络与服务55 条

NetworkPolicy 网络策略基础

以 Pod 为对象的防火墙规则:选择哪些 Pod、允许哪些方向的流量;策略是叠加的允许清单,未放行的默认拒绝。

Kubernetes 速查云更新于 2026-10-12
作用层级L3/L4(IP、端口、协议)
生效前提CNI 插件支持策略执行
作用对象同一命名空间内的 Pod(由 podSelector 选择)

允许同命名空间 app=web 访问 db 的 5432

允许同命名空间 app=web 访问 db 的 5432
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: db-allow-web
  namespace: prod
spec:
  podSelector:
    matchLabels:
      app: db
  policyTypes: ["Ingress"]
  ingress:
    - from:
        - podSelector:
            matchLabels:
              app: web
      ports:
        - protocol: TCP
          port: 5432
podSelector: {} 选择命名空间内全部 Pod;策略里没提到的东西不会被「顺带放行」。

易错点

  • CNI 不支持时策略对象创建成功但完全不生效(无报错),先确认插件能力
  • 策略规则是累加的:多个策略中任一允许即放行对应流量,不存在优先级覆盖

数据来源与参考

  • Kubernetes 官方文档 · Network Policies
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌