Azure如何使用任何CLI / API在可用性集中接收虚拟机的指定故障域ID?

问题描述 投票:2回答:2

我正在尝试检索可用性集内的VM的Fault Domain ID。这些ID是“随机”分配给相关虚拟机的,但对我和应用程序来说,知道vm分配给哪个故障域ID很重要。 (通过随机b / c我们使用terraform同时生成~21个VM)

在azure的Web门户上,如果查看可用性集,则可以检索此信息。

我尝试过的:

Azure CLI --expand instanceView

在页面上View Fault and Update Domains of virtual machine in Azure through Python Script他们给了我一个命令的例子:这给出了--expand属性的错误

az vm show -g [ResourceGroup] -n [VM_NAME] --expand instanceView

az: error: unrecognized arguments: --expand instanceView usage: az [-h] [--verbose] [--debug] [--output {json,jsonc,table,tsv}] [--query JMESPATH] {vm} ...

Azure CLI without --expand instanceView

这不会给出错误但也不会给我属性。

Powershell

我也尝试过Powershell,但没有成功。

Get-AzureRmVM -ResourceGroupName $ rg.ResourceGroupName |的ConvertTo-JSON

Get-AzureRmAvailabilitySet -ResourceGroupName $ rg.ResourceGroupName |的ConvertTo-JSON


有谁知道如何检索域错误ID?

powershell azure azure-cli azure-availability-set
2个回答
1
投票

AFAIK,您无法获得故障域ID,域由MS分配,您最多可以获得platformFaultDomainCount

故障域定义共享公共电源和网络交换机的虚拟机组。

默认情况下,可用性集中配置的虚拟机在最多三个故障域之间分离,以进行资源管理器部署(Classic的两个故障域)。

有关可用性集和故障域的更多详细信息,请参阅:


1
投票

可以使用REST API:

https://management.azure.com/subscriptions/%s/resourceGroups/%s/providers/Microsoft.Compute/virtualMachines/%s/instanceView?api-version=2017-03-30

所以,我刚写了一个REST API客户端来检索我的信息,我不知道为什么它在CLI客户端不起作用,(也许是一个bug?)

© www.soinside.com 2019 - 2024. All rights reserved.