NetworkPolicy 对 nginx-ingress 命名空间无效

NetworkPolicy 对 nginx-ingress 命名空间无效

我已使用 Rancher 2.2.8 将全新 Kubernetes 集群 (v1.15.3) 部署到单个全新 VM。我尝试向 Nginx 入口添加默认“拒绝所有”网络策略,以阻止任何连接。

我将以下内容应用于ingress-nginx命名空间:

kind: NetworkPolicy
apiVersion: networking.k8s.io/v1
metadata:
  name: http-deny-all
  namespace: ingress-nginx
spec:
  podSelector: {}
  ingress: []

但该网站仍然可以访问。

然后,我在命名空间中创建一个“nginx”守护进程集default,监听主机端口 81。如果我将相同的 NetworkPolicy 应用于default命名空间,它会成功阻止流量。

为什么 NetworkPolicy 不适用于nginx-ingress命名空间?这个命名空间或守护进程集是否有特殊之处,nginx-ingress-controller导致 NetworkPolicy 无法在此处工作?

答案1

最后,问题出hostNetwork: truenginx-ingress-controllerdaemonset 配置中。我删除了此行,重新启动了控制器 pod,现在 NetworkPolicy 已按预期应用。

相关内容