解决部署计数超出 800 的错误

每个资源组在其部署历史记录中最多只能有 800 个部署。 本文介绍在部署因超出允许的 800 个部署的限制而失败时可能会出现的错误。 若要解决此错误,请从资源组历史记录中删除部署。 从历史记录中删除部署不会影响已部署的任何资源。

当你接近限制时,Azure 资源管理器会自动删除历史记录中的部署。 仍出现此错误可能是由于以下原因之一:

  1. 资源组上具有 CanNotDelete 锁,它可以防止从部署历史记录中进行删除操作。
  2. 你选择不进行自动删除。
  3. 你有大量同时运行的部署,并且自动删除的处理速度不够快,无法减少总数量。

如需了解如何删除锁或选择自动删除,请参阅从部署历史记录中自动删除

本文介绍如何从历史记录手动删除部署。

症状

在部署过程中,你收到一条错误,指出当前部署将超过 800 个部署的配额。

解决方案

使用 az deployment group delete 命令从历史记录中删除部署。

az deployment group delete --resource-group exampleGroup --name deploymentName

若要删除五天以前的所有部署,请使用:

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(@)"