Calico CNI网络政策不影响节点上运行的Pod

时间:2020-09-26 12:08:48

标签: kubernetes project-calico cni

我一直在尝试在群集(k8s裸机)上实施网络策略,并且似乎没有在群集节点上运行的Pod上实施任何策略,仅在直接在主节点上运行的Pod上实施。

我尝试过的事情:

  • 具有主节点+节点和带有calicoctl且带有k8s数据存储的calicoctl的calico CNI的单个名称空间(我可以看到两个节点上都运行了calico / calicoctl容器)
  • 两种networkPolicy类型(networking.k8s.io/v1和projectcalico.org/v3)
  • 应用简单的拒绝任何入口/出口策略并测试ping到8.8.8.8(主节点上的Pod被阻塞,其他节点上的Pod仍然可以ping)

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

发现问题出在我使用'hostNetwork'的部署中,该主机使用的子网不是Pod网络的一部分(因此Calico不知道)。

删除'hostNetwork:true'参数使容器获得适用的IP和网络策略。