Google App Engine Java应用部署配额超限及版本删除失败问题咨询
App Engine部署配额不足问题解决方案
核心问题为两个限制叠加:IN_USE_ADDRESSES公网IP配额被僵死实例占满,且App Engine要求default服务必须至少保留1个可服务版本,无法直接删除唯一的现有版本。可按以下步骤操作:
- 第一步:强制清理僵死实例释放IP
现有实例均处于VM_LIVENESS=TIMEOUT僵死状态,不会自动销毁,需逐个手动删除多余实例,至少保留1个实例避免服务完全不可用:
将命令中gcloud app instances delete [实例ID] --service=default --version=20210916t134322[实例ID]替换为返回的实例ID(如aef-default-20210916t134322-0v2b)逐个执行即可。 - 第二步:收缩旧版本实例配置释放配额
执行命令将现有版本的最大实例数限制为1,自动销毁多余实例:
操作完成后IP占用会降至1个,空余出足够配额供新部署使用。gcloud app versions update 20210916t134322 --service=default --max-instances=1 - 第三步:重新执行部署命令
配额释放后运行原部署命令即可:
新部署完成后会自动成为default服务的默认版本,此时旧版本不再是唯一版本,可再执行gcloud app deploy --stop-previous-versiongcloud app versions delete 20210916t134322删除旧版本释放剩余资源。 - 备用方案(适用于无需公网访问的应用)
若应用不需要直接暴露公网访问,可在app.yaml中添加配置,部署时不占用公网IP配额:
部署完成后再清理旧版本资源即可。network: use_public_address: false
内容的提问来源于stack exchange,提问作者user3033090
相关产品推荐
相关产品推荐

