azure - azure应用程序服务命令自动缩放抛出["UnsupportedMetric"]错误

以下 az-cli 命令不支持 Azure 应用服务上的自动缩放实例的指标。

# Create cpu autoscale rule
az monitor autoscale rule create --resource-group $COMMON_RESOURCE_GROUP_NAME   \
  --subscription $SUBSCRIPTION_ID   \
  --resource $WEBAPP_NAME   \
  --resource-type 'Microsoft.Web/sites'   \
  --autoscale-name "test"  \
  --condition "Percentage CPU > 75 avg 5m"  \
  --scale out 1 

响应 - 引发“Microsoft.WindowsAzure.Management.Monitoring.MonitoringServiceException”类型的异常。[代码:“UnsupportedMetric”]

我遵循了这个 Microsoft 文档 - https://learn.microsoft.com/en-us/cli/azure/monitor/autoscale/rule?view=azure-cli-latest

我知道如何通过 azure 门户进行自动缩放,但我想使用脚本来执行此操作。

最佳答案

我能够通过以下步骤创建自动扩展策略和规则。

注意:这是特定于 Azure 服务计划的,但可能适用于其他 vms。

Azure 文档专门针对 VMSS - https://learn.microsoft.com/en-us/cli/azure/monitor/autoscale?view=azure-cli-latest因此我必须手动创建自动缩放和规则,并查看 JSON 输出以查看使用的实际指标名称。

RG="resource_group"
RESOURCE="service_plan_name"

首先,创建自动缩放

az monitor autoscale create -g $RG --resource $RESOURCE \
--min-count 1 --max-count 4 --count 1 --email-administrator \
--resource-type Microsoft.Web/serverfarms

然后,创建放大/缩小规则

az monitor autoscale rule create -g $RG --autoscale-name $RESOURCE \
--scale out 1 --condition "CpuPercentage > 80 avg 5m"

az monitor autoscale rule create -g $RG --autoscale-name $RESOURCE \
--scale in 1 --condition "CpuPercentage <= 40 avg 10m"

https://stackoverflow.com/questions/64115855/

相关文章:

angular - 如何将参数传递给 Angular 中的模态

node.js - Nodejs Swagger 无法向请求添加授权 header

reactjs - @apollo/client error-React Hook "useQuer

arrays - 使用 jq 将两个 JSON 数组合并到一个文件中

css - 防止在显示 : flex 时出现空白

reactjs - antd 切换勾选属性

html - 如何通过 CSS 更改 SVG 的大小

javascript - 使用 React.js 时未定义 Web Speech API Speec

python - 如何划分字典值?

python - 排序函数中 x%2==0 的排序列表给出了我不希望的结果