Azure CLI提取VM的VNet、子网及路由表脚本报错求助
Azure PowerShell脚本获取VM网络资源报错求助
我想用Azure PowerShell提取指定VM的虚拟网络(VNet)、子网和路由表信息,比Azure Portal操作更高效。这是我第一次使用Az模块编写脚本,目前已暂时禁用登录/登出及VM名称输入功能,但脚本无法正常运行。
报错详情
报错发生在以下代码行:$vnetId = (Get-AzNetworkInterface -Name $vm.Name -ResourceGroupName $vm.ResourceGroupName).IpConfigurations[0].Subnet.Id.Split("/")[-3]
收到的错误提示:
Get-AzNetworkInterface : The Resource 'Microsoft.Network/networkInterfaces/vmva2015' under resource group 'RG-REDISPATCHPROD-PROD-001' was not found.
StatusCode: 404
ReasonPhrase: Not Found
ErrorCode: ResourceNotFound
我的脚本
# Importieren der benötigten Az-Module Import-Module Az.Accounts Import-Module Az.Network Import-Module Az.Compute Import-Module Az.Resources Import-Module Az.DesktopVirtualization # Anmelden bei Azure #Connect-AzAccount # Eingabeaufforderung für den VM-Namen anzeigen #$vmName = Read-Host "Geben Sie den Namen der VM ein: " $vmName = "vmva2015" # Der Name der VM ist hier fest kodiert, für Testzwecke # Durchsuchen aller Abonnements nach der VM $subscriptions = Get-AzSubscription foreach ($subscription in $subscriptions) { Set-AzContext $subscription # Suchen der VM mit dem angegebenen Namen $vm = Get-AzVM -Name $vmName -ErrorAction SilentlyContinue if ($vm) { $resourceGroupName = $vm.ResourceGroupName # Die VM wurde gefunden, die benötigten Parameter abrufen $vnetId = $vm.NetworkProfile.NetworkInterfaces[0].Id.Split("/")[8] $vnet = Get-AzVirtualNetwork -ResourceGroupName $resourceGroupName -Name $vnetId $subnetId = $vm.NetworkProfile.NetworkInterfaces[0].Id.Split("/")[10] $subnet = Get-AzVirtualNetworkSubnet -Name $subnetId -VirtualNetwork $vnet $rtName = $subnet.RouteTable.Id.Split("/")[-1] $rt = Get-AzRouteTable -Name $rtName -ResourceGroupName $resourceGroupName # Ergebnisse ausgeben Write-Host "Name der VM: $($vm.Name)" Write-Host "Name des VNet: $($vnet.Name)" Write-Host "Name des Subnet: $($subnet.Name)" Write-Host "Name der Routing-Tabelle: $($rt.Name)" # Das Skript endet, sobald eine VM gefunden wurde break } }
我已经花了6-7小时搜索相关内容,但由于自身知识储备不足,还是没能解决问题,希望能得到帮助。
内容的提问来源于stack exchange,提问作者Andres Trujillo
相关产品推荐
相关产品推荐

