将云服务(经典)部署到 Azure 时对 OverconstrainedAllocationRequest 进行故障排除

重要

从 2024 年 9 月 1 日开始,已弃用所有客户的云服务(经典版)。 从 2024 年 10 月开始,Microsoft 将停止并关闭任何正在运行的现有部署,数据将永久性丢失。 新部署应使用基于 Azure 资源管理器的新型部署模型 Azure 云服务(外延支持)

在本文中,你将对阻止部署 Azure 云服务(经典)的受限制分配故障进行故障排除。

将实例部署到云服务或者添加新的 Web 角色或辅助角色实例时,Azure 会分配计算资源。

在执行这些操作时,甚至在达到 Azure 订阅限制之前,有时可能会收到错误。

提示

规划服务的部署时,本信息可能也有用。

症状

图像显示“操作日志(经典)”边栏选项卡。

异常类型 错误消息
OverconstrainedAllocationRequest 由于部署请求约束,无法预配此部署所需的虚拟机 (VM) 大小(或 VM 大小的组合)。 如果可能,请尝试放宽虚拟网络绑定等约束。 另外,请尝试部署到不存在其他部署的托管服务,并部署到其他地缘组或没有地缘组的托管服务。 可以尝试部署到一个完全不同的区域。

原因

如果云服务为“已固定”或“未固定”,则根本原因会有所不同。

注意

将第一个实例部署到云服务时(不管是部署到过渡环境还是生产环境),都会将该云服务固定到某个群集。

随着时间的推移,群集中的资源可能会被完全利用。 当固定的群集中没有足够的资源可用时,如果云服务(经典)发出分配请求来请求更多资源,则该请求将导致分配失败

解决方案

在以下情况下,请按照有关分配失败的指导进行操作。

未固定到群集

第一次部署云服务(经典)时,还没有选择群集,因此云服务未固定。 Azure 可能出现部署失败,原因是:

  • 你选择了区域中没有的特定大小。
  • 区域中未提供不同角色所需的大小组合。

在此情况下遇到分配错误时,建议的操作过程是检查区域中的可用大小,并更改之前指定的大小。

  1. 可以在云服务(经典)产品页上查看区域中的可用大小。

    注意

    “产品”页将不会显示可用容量。 对于任何新的分配,Azure 应能够在该时间点选取区域中的最佳群集。

  2. 更新云服务(经典)的服务定义文件,以指定区域中的不同产品大小

已固定到群集

现有的云服务已固定到群集。 云服务(经典)的任何进一步部署都将在同一个群集中进行。

在此情况下遇到分配错误时,建议的操作过程是重新部署到新的云服务(经典)(并更新 CNAME)。

提示

这种解决方案可能会最成功,因为它允许平台从该区域的所有群集中进行选择。

注意

此解决方案应该不会导致停机。

  1. 将工作负荷部署到新的云服务(经典)。

    警告

    如果你不希望丢失与此部署槽位关联的 IP 地址,则可以使用解决方案 3 - 保留 IP 地址

  2. 更新 CNAME 或 A 记录,以将流量指向新的云服务(经典)。

  3. 没有流量流向旧站点后,即可删除旧的云服务(经典)。

有关进一步的修正步骤,请参阅云服务(经典)分配失败故障排除 | Microsoft Docs

后续步骤

有关更多分配失败解决方案和背景信息:

如果本文未解决你的 Azure 问题,请访问 Microsoft Developer Network (MSDN) 和 Stack Overflow 上的 Azure 论坛。 可将问题发布到这些论坛上,或发布到 X 上的 @AzureSupport。还可提交 Azure 支持请求。 若要提交支持请求,请在 Azure 支持页上,选择“获取支持”。