Guida introduttiva: Eseguire una query di Resource Graph con Azure PowerShell
Questa guida introduttiva descrive come eseguire una query di Azure Resource Graph usando il Az.ResourceGraph
modulo per Azure PowerShell. Il modulo è incluso nella versione più recente di Azure PowerShell e aggiunge i cmdlet per Resource Graph.
L'articolo illustra anche come ordinare (ordinare) e limitare i risultati della query. È possibile eseguire una query per le risorse nel tenant, nei gruppi di gestione o nelle sottoscrizioni.
Prerequisiti
- Se non si ha un account Azure, creare un account gratuito prima di iniziare.
- Versioni più recenti di PowerShell e Azure PowerShell.
- Visual Studio Code.
Installare il modulo
Se sono state installate le versioni più recenti di PowerShell e Azure PowerShell, il modulo e la Az.ResourceGraph
versione necessaria di PowerShellGet sono già disponibili.
Installazione facoltativa del modulo
Usare la procedura seguente per installare il Az.ResourceGraph
modulo in modo che sia possibile usare Azure PowerShell per eseguire query di Azure Resource Graph. Il modulo Azure Resource Graph richiede PowerShellGet versione 2.0.1 o successiva.
Verificare la versione di PowerShellGet:
Get-Module -Name PowerShellGet
Se è necessario eseguire l'aggiornamento, passare a PowerShellGet.
Installare il modulo :
Install-Module -Name Az.ResourceGraph -Repository PSGallery -Scope CurrentUser
Il comando installa il modulo nell'ambito
CurrentUser
. Se è necessario installare nell'ambitoAllUsers
, eseguire l'installazione da una sessione amministrativa di PowerShell.Verificare che il modulo sia stato installato:
Get-Command -Module Az.ResourceGraph -CommandType Cmdlet
Il comando visualizza la versione del
Search-AzGraph
cmdlet e carica il modulo nella sessione di PowerShell.
Connect to Azure
Da una sessione del terminale di Visual Studio Code connettersi ad Azure. Se si dispone di più sottoscrizioni, eseguire i comandi per impostare il contesto sulla sottoscrizione. Sostituire <subscriptionID>
con l'ID della sottoscrizione di Azure.
Connect-AzAccount
# Run these commands if you have multiple subscriptions
Get-AzSubScription
Set-AzContext -Subscription <subscriptionID>
Eseguire una query
Dopo aver aggiunto il modulo all'ambiente, è possibile eseguire una query basata su tenant. La query in questo esempio restituisce cinque risorse di Azure con name
e type
di ogni risorsa. Per eseguire query in base al gruppo di gestione o alla sottoscrizione, usare i -ManagementGroup
parametri o -Subscription
.
Eseguire una query di Azure Resource Graph usando il
Search-AzGraph
cmdlet :Search-AzGraph -Query 'Resources | project name, type | limit 5'
Questo esempio di query non usa un modificatore di ordinamento come
order by
. Se si esegue la query più volte, potrebbe restituire un set diverso di risorse per ogni richiesta.Aggiornare la query applicando
order by
alla proprietàname
:Search-AzGraph -Query 'Resources | project name, type | limit 5 | order by name asc'
Analogamente alla query precedente, se si esegue questa query più volte potrebbe restituire un set diverso di risorse per ogni richiesta. L'ordine dei comandi della query è importante. In questo esempio
order by
seguelimit
. La query limita i risultati a cinque risorse e quindi ordina i risultati in base al nome.Aggiornare la query per
order by
la proprietàname
e quindilimit
l'output a cinque risultati:Search-AzGraph -Query 'Resources | project name, type | order by name asc | limit 5'
Se questa query viene eseguita più volte senza modifiche all'ambiente, i risultati sono coerenti e ordinati in base alla proprietà
name
, ma sono comunque limitati a cinque risultati. La query ordina i risultati in base al nome e quindi limita l'output a cinque risorse.
Se una query non restituisce risultati da una sottoscrizione a cui si ha già accesso, si noti che Search-AzGraph
per impostazione predefinita il cmdlet corrisponde alle sottoscrizioni nel contesto predefinito. Per visualizzare l'elenco degli ID sottoscrizione che fanno parte del contesto predefinito, eseguire questa (Get-AzContext).Account.ExtendedProperties.Subscriptions
operazione Se si vuole cercare in tutte le sottoscrizioni a cui si ha accesso, impostare per Search-AzGraph
il PSDefaultParameterValues
cmdlet eseguendo$PSDefaultParameterValues=@{"Search-AzGraph:Subscription"= $(Get-AzSubscription).ID}
Pulire le risorse
Per disconnettersi dalla sessione di Azure PowerShell:
Disconnect-AzAccount
Passaggi di pulizia facoltativi
Se è stata installata la versione più recente di Azure PowerShell, il Az.ResourceGraph
modulo è incluso e non deve essere rimosso. I passaggi seguenti sono facoltativi se è stata eseguita un'installazione manuale del Az.ResourceGraph
modulo e si vuole rimuovere il modulo.
Per rimuovere il Az.ResourceGraph
modulo dalla sessione di PowerShell, eseguire il comando seguente:
Remove-Module -Name Az.ResourceGraph
Per disinstallare il Az.ResourceGraph
modulo dal computer, eseguire il comando seguente:
Uninstall-Module -Name Az.ResourceGraph
Potrebbe essere visualizzato un messaggio che indica che il modulo Az.ResourceGraph è attualmente in uso. In questo caso, è necessario arrestare la sessione di PowerShell e avviare una nuova sessione. Eseguire quindi il comando per disinstallare il modulo dal computer.
Passaggi successivi
In questa guida introduttiva è stato aggiunto il modulo Resource Graph all'ambiente Azure PowerShell ed è stata eseguita una query. Per altre informazioni, passare alla pagina dei dettagli del linguaggio di query.