我试图为我的 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 安装所有内容,但没有错误或显示任何内容。