我需要获取 DSC 节点关联的 Azure VM 的 ResourceGroup 和 ResourceID

问题描述 投票:0回答:1

当我运行

Get-AzAutomationDSCNode
时,我在resourcegroup1中注册了两个节点。

两个节点具有相同的名称“Node1”,但属于不同的资源组。

Node1 - resourcegroup1
Node1 - resourcegroup2

由于它们都注册在同一资源组下,我如何使用 powershell 获取节点的关联虚拟机,以便我知道要删除的正确节点。

Get-AzAutomationDscNode 的属性不包含 VmResourceID

azure powershell azure-automation dsc
1个回答
0
投票

如何使用powershell获取节点的关联虚拟机

这是使用自动化帐户节点获取

VM
名称的 PowerShell 脚本。

    $resourceGroupNames = @("RG1", "RG2")
    $automationAccountNames = @("Automate-WUS2", "MM")
    for ($i = 0; $i -lt $resourceGroupNames.Length; $i++) {
        $resourceGroupName = $resourceGroupNames[$i]
        $automationAccountName = $automationAccountNames[$i]
    
        $dscNodes = Get-AzAutomationDscNode -ResourceGroupName $resourceGroupName -AutomationAccountName $automationAccountName
    
        foreach ($dscNode in $dscNodes) {
            Write-Host "DSC Node Name: $($dscNode.Name), Resource Group: $resourceGroupName, Automation Account: $automationAccountName"
        }
    }

输出:

enter image description here

这是获取

VM
资源 ID 的脚本。

    foreach ($dscNode in $dscNodes) {
        $vmname= $dscNode.Name
        $vm = Get-AzVM -ResourceGroupName $resourceGroupName -Name $vmname
        Write-Host "DSC Node Name: $($dscNode.Name), Resource Group: $resourceGroupName, Automation Account: $automationAccountName"
        Write-Host "VM Name: $($vm.Name), VM Resource ID: $($vm.Id), DSC Node Name: $($dscNode.Name), Resource Group: $resourceGroupName, Automation Account: $automationAccountName"
    }
© www.soinside.com 2019 - 2024. All rights reserved.