Gcloud Run部署卡在Routing traffic阶段触发WaitException报错求助
解决GCloud部署时Routing Traffic阶段超时失败的问题
问题描述
今日尝试向GCloud部署内容,执行流程如下:
⠶ Building and deploying... Recreating retired Revision. ✓ Uploading sources... ✓ Building Container... Logs are available at [https://console.cloud.google.com/cloud-build/builds/4ee7f621-c548-4630-acbc-6bcd7daa3275?project=638685146920]. ✓ Creating Revision... ⠶ Routing traffic...
但出现异常:Routing traffic阶段耗时极久,最终部署失败并报错:
Deployment failed ERROR: gcloud crashed (WaitException): last_result=<googlecloudsdk.api_lib.run.condition.Conditions object at 0x7f179f99c2b0>, last_retrial=1326, time_passed_ms=1799923,time_to_wait=1000
可能的原因
- 资源配额不足:GCloud项目中Compute Engine、Cloud Run相关资源(如CPU、内存、外部IP地址)配额耗尽,导致流量路由所需的支撑资源无法创建。
- 网络配置异常:VPC防火墙规则阻止了Cloud Run服务的流量交互,或负载均衡器、域名解析配置错误,无法完成流量分发。
- 旧版本资源锁定:已退役的Revision未被正常清理,占用了流量路由的相关资源,导致新版本无法完成流量切换。
- 区域服务临时故障:部署目标区域的Cloud Run或关联服务(如负载均衡服务)出现临时故障,导致路由操作超时。
解决办法
- 检查并调整资源配额:
进入GCloud控制台的配额管理界面,查看Compute Engine和Cloud Run类资源的使用情况,若配额不足,提交配额提升申请或清理闲置资源释放配额。 - 排查网络配置:
- 检查VPC防火墙规则,确保允许Cloud Run服务的内外网流量(包括针对服务端口的入站/出站规则)。
- 确认负载均衡器的后端服务与新创建的Revision关联正确,域名解析记录配置无误。
- 手动清理旧版本:
执行命令列出所有Revision:
删除已退役的旧Revision:gcloud run revisions list --service=[YOUR_SERVICE_NAME]
完成后重新执行部署命令。gcloud run revisions delete [REVISION_NAME] - 重试部署或切换区域:
直接重新运行部署命令,临时故障可能已自动恢复;若当前区域持续异常,尝试切换到其他可用区域进行部署。 - 查看详细日志定位问题:
通过GCloud控制台查看Cloud Build的构建日志、Cloud Run的服务日志,获取更具体的错误信息,精准定位故障点。
内容的提问来源于stack exchange,提问作者mcrdy455
相关产品推荐
相关产品推荐

