Azure Web App无法及时自动缩放

Mar*_*tin 5 azure azure-web-sites

更新:现在似乎正在运作.

我已将Azure Web App配置为4到10个实例,CPU负载超过80%且低于60%. 自动缩放设置

我们的站点现在已经超过95%的CPU负载超过两个小时,并且没有发生自动调节.

在查看"时间表和性能规则"时,我看到持续时间(分钟)为300. 时间表和表现规则

我觉得这应该是10分钟,但是当我设置并保存(使用有效的验证规则)时,我收到此错误:

自动缩放错误

我做错了什么或门户网站是否有错误?

手动增加到5然后减少到4后,我可以看到自动调节在管理服务日志中正在工作:

ActiveAutoscaleProfile: {   "Name": "Default",   "Capacity": {
    "Minimum": "2",
    "Maximum": "10",
    "Default": "2"   },   "Rules": [
    {
      "MetricTrigger": {
        "Name": "CpuPercentage",
        "Namespace": "",
        "Resource": "xxx",
        "ResourceLocation": "West Europe",
        "TimeGrain": "PT1H",
        "Statistic": "Average",
        "TimeWindow": "PT5H",
        "TimeAggregation": "Average",
        "Operator": "GreaterThanOrEqual",
        "Threshold": 80.0,
        "Source": "xxx"
      },
      "ScaleAction": {
        "Direction": "Increase",
        "Type": "ChangeCount",
        "Value": "1",
        "Cooldown": "PT5M"
      }
    },
    {
      "MetricTrigger": {
        "Name": "CpuPercentage",
        "Namespace": "",
        "Resource": "xxx",
        "ResourceLocation": "West Europe",
        "TimeGrain": "PT1H",
        "Statistic": "Average",
        "TimeWindow": "PT5H",
        "TimeAggregation": "Average",
        "Operator": "LessThan",
        "Threshold": 60.0,
        "Source": "xxx"
      },
      "ScaleAction": {
        "Direction": "Decrease",
        "Type": "ChangeCount",
        "Value": "1",
        "Cooldown": "PT5M"
      }
    }   ] }

Description: The autoscale engine attempting to scale resource xxx' from 3 instances count to 2 instances count.

LastScaleActionTime: Wed, 03 Jun 2015 09:11:38 GMT

Microsoft.Resources/EventNameV2: Autoscale a resource.

Microsoft.Resources/Operation: Scale down

Microsoft.Resources/ResourceUri: /xxx

NewInstancesCount: 2

OldInstancesCount: 3

ResourceName: xxx
Run Code Online (Sandbox Code Playgroud)

所以我可以看到自动缩放确实有效.

可以通过编程方式更改值吗?

Ric*_*ney 4

这似乎是预览门户中的一个错误。如果您想投票的话,我在这里提供了反馈。

该问题与 MetricTrigger 中作为自动缩放规则一部分存在的 TimeGrain 属性有关。预览门户似乎将此值默认为 1 小时(“PT1H”),且无法更改。这会阻止您在门户中将持续时间设置为小于 60 分钟的值。

作为解决方法,如果您使用https://manage.windowsazure.com上的当前门户,并为您的 Web 应用程序配置 CPU 自动缩放,然后返回到预览门户,您将能够将 Duration 设置为低至 5 分钟。

最后,回答您有关以编程方式设置此设置的问题。是的,使用管理库可以做到这一点。我在这里展示了如何为云服务执行此操作。但是,对于网络应用程序来说,它应该是相同的(或非常相似)。这是一年多前的事了,所以它可能无法像我所写的那样 100% 工作,但看起来 MetricTrigger 类仍然基本相同,这就是您大部分注意力的地方。