我在欧洲西部有一个带有GKE入口的GKE环境6。它一直在工作,直到几天前Ingress开始出现以下错误:
Failed to sync NEG "k8s1-484a9780-default-prova-80-0425e497" (will retry): googleapi: Error 403: QUOTA_EXCEEDED - Quota 'NETWORK_ENDPOINT_GROUPS' exceeded. Limit: 100.0 in region europe-west6.
我很困惑,因为错误说我超过了100个NEG的限制,但整个项目中只有一个NEG。我尝试在us-central1中加载相同的环境,它按预期工作。
欧洲西部的NEG有问题吗6?
非常感谢Massimo
每当您收到这样的错误时:QUOTA_EXCEEDED - Quota 'NETWORK_ENDPOINT_GROUPS' exceeded. Limit: 100.0 in region europe-west6
,您可以通过在云控制台中查找配额来检查是否存在这种情况。
至于删除入口时未删除的网络端点组,这是按预期工作的。为了避免泄露NEG,请查看以下文档:
使用独立的NEG,您负责管理NEG的生命周期和组成负载均衡器的资源。你可以通过以下方式泄露NEG:
删除GKE服务时,如果后端服务仍在引用关联的NEG,则不会对其进行垃圾收集。从后端服务取消引用NEG以允许删除NEG。删除集群时,不会删除独立的NEG。
如果您希望更改此行为,可以通过公共问题跟踪程序中的功能请求进行建议。然而,不能保证这一点会被引入。
我发现了这个问题。看起来,当你通过Kubernetes创建GKE Ingress时,它会为Ingres创建一个NEG。但是,当您删除Ingress时,它不会删除NEG。所以我实际上收集了100个NEG!我认为这是一种非常愚蠢的行为。当我关闭集群时,我希望与这样一个集群相关的所有资源都会被删除。GCP无法激活幕后资源,并将其永远留在那里!至少GCP应该发送警报,让用户意识到删除Ingress不会删除相关的NEG。
感谢Massimo