我试图对GKE群集上的Pod使用网络策略,但是我发现它不起作用,尽管我同时为主节点和节点启用了网络策略。
然后,我尝试拒绝所有网络策略,以查看是我的网络策略错了,还是GKE出错了,但无济于事。
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default-deny
namespace: default
spec:
podSelector: {}
policyTypes:
- Ingress
- Egress
我在做什么错了?
更新:
这些是我的集群上安装的Calico Pod:
calico-node-vertical-autoscaler-c97d48744-h4fjj 1/1 Running 0 5m24s
calico-typha-59cb487c49-hf4sg 1/1 Running 0 5m20s
calico-typha-horizontal-autoscaler-55c949db8f-vtvrf 1/1 Running 0 5m24s
calico-typha-vertical-autoscaler-f7c48db59-lj9h6 1/1 Running 0 5m24s
calico-typha-horizontal-autoscaler日志已满:
k8sclient.go:221] Falling back to extensions/v1beta1, error using apps/v1: deployments.apps "calico-typha" is forbidden: User "system:serviceaccount:kube-system:typha-cpha" cannot get resource "deployments/scale" in API group "apps" in the namespace "kube-system"
解决方案:
在浏览了Suren关于检查日志的评论之后,我发现它可能是集群太小了,不再处理负载了,所以将节点池更改为更大的节点池,现在一切正常例如GCP无法为Calico安装所有组件,但没有出现错误或显示任何错误。