Azure - 虚拟机规模集指标收集
Azure - Virtual Machine Scale Sets Metric collection
我想通过 cli 以类似于虚拟机指标的方式为虚拟机规模集 (VMSS) 中的实例收集机器指标(总体上也会这样做)命令 - az vm monitor metrics (LINK) - 因为它的输出适合我的用例,所以我无法为此找到解决方案,也不确定在哪里寻找这样的解决方案,因为我可以收集VMSS 实例名称,但是它们存在于资源组外部和 VMSS 内部,因此上述命令不起作用。
来自命令 az vm monitor metrics
的示例 CLI 摘录,我需要从 VMSS 机器
"timeseries": [
{
"data": [
{
"average": 89.425,
"count": null,
"maximum": null,
"minimum": null,
"timeStamp": "2021-12-31T18:10:00+00:00",
"total": null
},...
谢谢
编辑:添加了详细信息
您可以控制要监控的指标,例如 CPU 或磁盘、应用程序负载必须满足给定阈值的时间长度,以及要添加到规模集中的 VM 实例数.
您可以使用 az monitor autoscale rule create 创建一个规则,当平均 CPU 负载超过 5-5% 时增加规模集中 VM 实例的数量分钟的时间。当规则触发时,VM 实例的数量增加三个。
az monitor autoscale rule create \
--resource-group myResourceGroup \
--autoscale-name autoscale \
--condition "Percentage CPU > 70 avg 5m" \
--scale out 3
可以参考Automatically scale a virtual machine scale set with the Azure CLI
由于 Microsoft 没有提供用于从 az vm monitor
命令检索指标的 CLI 命令,因此解决方法是使用 Python MonitorManagmentClient
,使用 resource_id
如下:
resource_id = (
"subscriptions/{}/"
"resourceGroups/{}/"
"providers/Microsoft.Compute/virtualmachineScaleSets/{}"
).format(subscription_id, resource_group_name, vm_name)
此位允许您根据需要从 virtualMachineScaleSets
中获取指标。
我想通过 cli 以类似于虚拟机指标的方式为虚拟机规模集 (VMSS) 中的实例收集机器指标(总体上也会这样做)命令 - az vm monitor metrics (LINK) - 因为它的输出适合我的用例,所以我无法为此找到解决方案,也不确定在哪里寻找这样的解决方案,因为我可以收集VMSS 实例名称,但是它们存在于资源组外部和 VMSS 内部,因此上述命令不起作用。
来自命令 az vm monitor metrics
的示例 CLI 摘录,我需要从 VMSS 机器
"timeseries": [
{
"data": [
{
"average": 89.425,
"count": null,
"maximum": null,
"minimum": null,
"timeStamp": "2021-12-31T18:10:00+00:00",
"total": null
},...
谢谢
编辑:添加了详细信息
您可以控制要监控的指标,例如 CPU 或磁盘、应用程序负载必须满足给定阈值的时间长度,以及要添加到规模集中的 VM 实例数.
您可以使用 az monitor autoscale rule create 创建一个规则,当平均 CPU 负载超过 5-5% 时增加规模集中 VM 实例的数量分钟的时间。当规则触发时,VM 实例的数量增加三个。
az monitor autoscale rule create \
--resource-group myResourceGroup \
--autoscale-name autoscale \
--condition "Percentage CPU > 70 avg 5m" \
--scale out 3
可以参考Automatically scale a virtual machine scale set with the Azure CLI
由于 Microsoft 没有提供用于从 az vm monitor
命令检索指标的 CLI 命令,因此解决方法是使用 Python MonitorManagmentClient
,使用 resource_id
如下:
resource_id = (
"subscriptions/{}/"
"resourceGroups/{}/"
"providers/Microsoft.Compute/virtualmachineScaleSets/{}"
).format(subscription_id, resource_group_name, vm_name)
此位允许您根据需要从 virtualMachineScaleSets
中获取指标。