Azure CLI监视所有虚拟机的指标

时间:2020-05-09 08:31:13

标签: azure azure-cli azure-monitoring

我想使用Azure CLI监视预订中的所有虚拟机的指标。根据Microsoft的“ az监控指标警报”文档,为特定资源ID创建的每个警报,例如:

az monitor metrics alert create -n alert1 -g {ResourceGroup} --scopes {VirtualMachineID} --condition "avg Percentage CPU > 90" --description "High CPU"

我是否可以创建警报以监视所有VM的CPU高容量(而不是创建与特定VM关联的许多警报)? 此外,如何将电子邮件配置为警报措施?

谢谢。

1 个答案:

答案 0 :(得分:1)

从语法上看,如果仅将逗号分隔的资源ID列表传递给--scope参数,就应该能够为多个资源创建度量标准警报。但这似乎没有按预期工作。

作为替代方案,您可以配置ARM模板以创建Azure Monitor Metrics警报,该警报可以定位/监视一个或多个资源组或订阅中的多个资源。

您可以参考this文档,了解如何为监视多个资源的度量标准警报构建ARM模板。

在此模板中,您需要提供操作组的操作组ID,以指定警报触发时要采取的操作。要获取操作组ID,请使用Set-AzActionGroup创建一个操作组,您可以在-Receiver参数中指定要接收电子邮件的操作。

配置完模板和模板参数JSON文件后,可以使用以下Az CLI cmdlet块将其部署到Azure中:

Connect-AzAccount
Select-AzSubscription -SubscriptionName <yourSubscriptionName>
New-AzResourceGroupDeployment -Name myDeployment -ResourceGroupName <ResourceGroupWhereRuleShouldbeSaved> -TemplateFile template.json -TemplateParameterFile templateparams.parameters.json

希望这会有所帮助!