每个资源组在其部署历史记录中最多只能有 800 个部署。 本文介绍在部署因超出允许的 800 个部署的限制而失败时可能会出现的错误。 若要解决此错误,请从资源组历史记录中删除部署。 从历史记录中删除部署不会影响已部署的任何资源。
当你接近限制时,Azure 资源管理器会自动删除历史记录中的部署。 仍出现此错误可能是由于以下原因之一:
- 资源组上具有 CanNotDelete 锁,它可以防止从部署历史记录中进行删除操作。
- 你选择不进行自动删除。
- 你有大量同时运行的部署,并且自动删除的处理速度不够快,无法减少总数量。
有关如何删除锁定或选择自动删除的信息,请参阅 部署历史记录中的自动删除。
本文介绍如何从历史记录中手动删除部署。
症状
在部署期间,你会收到一个错误信息,提示当前部署已超出 800 次部署的限额。
解决方案
使用 az deployment group delete 命令从历史记录中删除部署。
az deployment group delete --resource-group exampleGroup --name deploymentName
若要删除超过 5 天的所有部署,请使用:
startdate=$(date +%F -d "-5days")
deployments=$(az deployment group list --resource-group exampleGroup --query "[?properties.timestamp<'$startdate'].name" --output tsv)
for deployment in $deployments
do
az deployment group delete --resource-group exampleGroup --name $deployment
done
可以使用以下命令获取部署历史记录中的当前计数。 此示例需要 Bash 环境。
az deployment group list --resource-group exampleGroup --query "length(@)"