解决“超出作业大小”错误
本文介绍如何解决 JobSizeExceededException
和 DeploymentJobSizeExceededException
错误。 部署 Bicep 文件或 Azure 资源管理器模板(ARM 模板)时,可能会出现作业大小超出错误。
症状
部署模板时收到一条错误,指出部署已超出限制。
原因
在部署超出允许的限制时,就会出现此错误。 通常,当模板或运行部署的作业太大时,会出现此错误。
部署作业不能超过 1 MB 并且包含有关请求的元数据。 对于大型模板,与模板合并的元数据可能会超出作业允许的大小。
模板不能超过 4 MB,并且每个资源定义不能超过 1 MB。 在为使用循环创建许多实例的资源定义扩展了模板后,限制会应用于该模板的最终状态。 最终状态还包括变量和参数的已解析值。
其他模板限制包括:
- 256 个参数
- 256 个变量
- 800 个资源(包括副本计数)
- 64 个输出值
- 模板表达式中不超过 24,576 个字符
解决方案 1:谨慎使用依赖项
解决方案 2:简化模板
在你的文件部署大量不同的资源类型时,请考虑将这些资源类型划分为模块。 将你的资源类型划分为逻辑组,并为每个组添加模块。 例如,如果需要部署大量网络资源,则可将这些资源移动到某个模块。
可将其他资源设置为隐式依赖项,并从模块的输出获取值。