检索Azure订阅中所有虚拟机的CPU利用率的最佳方法
尝试获得CPU利用率(最好是网络利用率。我也希望获得RAM,但据我所知,这需要安装来宾模块来获得这些指标。因此,在这一点上,我只需要“主机”级别的指标) 想法是对订阅中的所有虚拟机运行此操作,以获取虚拟机名称、虚拟机资源组、过去x天的CPU利用率、过去x天的网络接入和过去x天的网络输出 不过,我尝试的第一件事是使用“Get AzureRMMetric”,开始给出错误 我键入“get-azurermmetric”,并提示输入资源ID。我输入VM的资源ID,得到的响应是一长串警告和异常类型,返回了无效的状态代码“notfound”检索Azure订阅中所有虚拟机的CPU利用率的最佳方法,azure,powershell,Azure,Powershell,尝试获得CPU利用率(最好是网络利用率。我也希望获得RAM,但据我所知,这需要安装来宾模块来获得这些指标。因此,在这一点上,我只需要“主机”级别的指标) 想法是对订阅中的所有虚拟机运行此操作,以获取虚拟机名称、虚拟机资源组、过去x天的CPU利用率、过去x天的网络接入和过去x天的网络输出 不过,我尝试的第一件事是使用“Get AzureRMMetric”,开始给出错误 我键入“get-azurermmetric”,并提示输入资源ID。我输入VM的资源ID,得到的响应是一长串警告和异常类型,返回了无
有什么想法吗?首先,您需要确定vm支持哪些指标,请使用以下代码:
(Get-AzureRmMetricDefinition -ResourceId "vm resource id").name
然后您可以看到支持的指标(只需忽略警告消息):
根据您的问题,我认为您需要“CPU百分比”/“网络输入”/“网络输出”
然后,您可以使用下面的示例代码(如果不满足您的需要,您可以进行一些更改):
测试结果:
首先,您需要确定vm支持哪些指标,请使用以下代码:
(Get-AzureRmMetricDefinition -ResourceId "vm resource id").name
然后您可以看到支持的指标(只需忽略警告消息):
根据您的问题,我认为您需要“CPU百分比”/“网络输入”/“网络输出”
然后,您可以使用下面的示例代码(如果不满足您的需要,您可以进行一些更改):
测试结果:
空间
我们可以使用相同的脚本获取CPU的最大使用率,
我曾经做过如下改变,比如呼叫最大值…不走运..我希望一些情况需要你有解决方案吗
foreach($c in $cpu.Data.Maximum)
{
#this is a average value for 12 hours, so total = $c*12 (or should be $c*12*60*60)
$cpu_total += $c*12
#($c|measure -maximum).maximum
}
空间
我们可以使用相同的脚本获取CPU的最大使用率,
我曾经做过如下改变,比如呼叫最大值…不走运..我希望一些情况需要你有解决方案吗
foreach($c in $cpu.Data.Maximum)
{
#this is a average value for 12 hours, so total = $c*12 (or should be $c*12*60*60)
$cpu_total += $c*12
#($c|measure -maximum).maximum
}
你的问题解决了吗?你的问题解决了吗?