Schnellstart: Ausführen einer Resource Graph-Abfrage unter Verwendung von Azure PowerShell
In dieser Schnellstartanleitung wird erläutert, wie Sie eine Azure Resource Graph-Abfrage unter Verwendung des Moduls Az.ResourceGraph
für Azure PowerShell ausführen. Außerdem wird in dem Artikel gezeigt, wie Sie die Ergebnisse der Abfrage sortieren und einschränken. Sie können eine Abfrage für Ressourcen in Ihrem Mandanten, in Verwaltungsgruppen oder in Abonnements ausführen. Nach Abschluss des Vorgangs können Sie das Modul entfernen.
Voraussetzungen
- Sollten Sie kein Azure-Konto haben, erstellen Sie zunächst ein kostenloses Konto.
- PowerShell:
- Azure PowerShell.
- Visual Studio Code.
Installieren Sie das Modul
Installieren Sie das Az.ResourceGraph
-Modul, damit Sie Azure PowerShell verwenden können, um Azure Resource Graph-Abfragen auszuführen. Das Azure Resource Graph-Modul erfordert PowerShellGet ab Version 2.0.1. Wenn Sie die neuesten Versionen von PowerShell und Azure PowerShell installiert haben, verfügen Sie bereits über die erforderliche Version.
Überprüfen Sie Ihre PowerShellGet-Version:
Get-Module -Name PowerShellGet
Wenn ein Update erforderlich ist, navigieren Sie zu PowerShellGet.
Installieren Sie das -Modul:
Install-Module -Name Az.ResourceGraph -Repository PSGallery -Scope CurrentUser
Der Befehl installiert das Modul im
CurrentUser
-Bereich. Wenn Sie imAllUsers
-Bereich installieren müssen, führen Sie die Installation in einer PowerShell-Sitzung mit Administratorberechtigung aus.Überprüfen Sie, ob das Modul installiert wurde:
Get-Command -Module Az.ResourceGraph -CommandType Cmdlet
Der Befehl zeigt die Version des Cmdlets
Search-AzGraph
an und lädt das Modul in Ihre PowerShell-Sitzung.
Herstellen einer Verbindung mit Azure
Stellen Sie in einer Visual Studio Code-Terminalsitzung eine Verbindung mit Azure her. Wenn Sie über mehrere Abonnements verfügen, führen Sie die Befehle aus, um den Kontext für Ihr Abonnement festzulegen. Ersetzen Sie <subscriptionID>
durch Ihre Azure-Abonnement-ID.
Connect-AzAccount
# Run these commands if you have multiple subscriptions
Get-AzSubScription
Set-AzContext -Subscription <subscriptionID>
Ausführen einer Abfrage
Nachdem das Modul zu Ihrer Umgebung hinzugefügt wurde, können Sie eine mandantenbasierte Abfrage ausführen. Die Abfrage in diesem Beispiel gibt fünf Azure-Ressourcen mit dem Namen (name
) und Typ (type
) der jeweiligen Ressource zurück. Verwenden Sie für eine Abfrage nach Verwaltungsgruppe oder Abonnement die Parameter -ManagementGroup
oder -Subscription
.
Führen Sie eine Azure Resource Graph-Abfrage mit dem
Search-AzGraph
-Cmdlet aus:Search-AzGraph -Query 'Resources | project name, type | limit 5'
In diesem Abfragebeispiel wird kein Sortierungsmodifizierer wie
order by
verwendet. Wenn Sie die Abfrage mehrfach ausführen, wird möglicherweise für jede Anforderung eine andere Gruppe von Ressourcen zurückgegeben.Aktualisieren Sie die Abfrage, um die Ergebnisse mithilfe von
order by
nach dername
-Eigenschaft zu sortieren:Search-AzGraph -Query 'Resources | project name, type | limit 5 | order by name asc'
Genau wie bei der vorherigen Abfrage gilt: Wenn Sie diese Abfrage mehrfach ausführen, wird möglicherweise für jede Anforderung eine andere Gruppe von Ressourcen zurückgegeben. Die Reihenfolge der Abfragebefehle ist wichtig. In diesem Beispiel kommt
order by
nachlimit
. Die Abfrage beschränkt die Ergebnisse auf fünf Ressourcen und sortiert diese Ergebnisse dann nach Name.Aktualisieren Sie die Abfrage, um die Ergebnisse mithilfe von
order by
nach dername
-Eigenschaft zu sortieren und die Ausgabe mithilfe vonlimit
auf fünf Ergebnisse zu beschränken:Search-AzGraph -Query 'Resources | project name, type | order by name asc | limit 5'
Wenn diese Abfrage mehrmals ausgeführt wird und sich in Ihrer Umgebung nichts geändert hat, sind die Ergebnisse konsistent und nach der
name
-Eigenschaft sortiert, aber immer noch auf fünf Ergebnisse begrenzt. Die Abfrage sortiert die Ergebnisse nach Name und beschränkt dann die Ausgabe auf fünf Ressourcen.
Beachten Sie, dass das Cmdlet Search-AzGraph
standardmäßig Abonnements im Standardkontext verwendet, wenn eine Abfrage keine Ergebnisse aus einem Abonnement zurückgibt, auf das Sie bereits Zugriff haben. Wenn Sie die Liste der Abonnement-IDs anzeigen möchten, die Teil des Standardkontexts sind, führen Sie (Get-AzContext).Account.ExtendedProperties.Subscriptions
aus. Wenn Sie alle Abonnements durchsuchen möchten, auf die Sie Zugriff haben, können Sie PSDefaultParameterValues
für das Cmdlet Search-AzGraph
durch Ausführen von $PSDefaultParameterValues=@{"Search-AzGraph:Subscription"= $(Get-AzSubscription).ID}
festlegen.
Bereinigen von Ressourcen
Führen Sie den folgenden Befehl aus, um das Az.ResourceGraph
-Modul aus Ihrer PowerShell-Sitzung zu entfernen:
Remove-Module -Name Az.ResourceGraph
Führen Sie den folgenden Befehl aus, um das Az.ResourceGraph
-Modul auf Ihrem Computer zu deinstallieren:
Uninstall-Module -Name Az.ResourceGraph
Möglicherweise wird eine Meldung angezeigt, dass das Az.ResourceGraph-Modul zurzeit verwendet wird. In diesem Fall fahren Sie Ihre PowerShell-Sitzung herunter und starten eine neue Sitzung. Führen Sie dann den Befehl aus, um das Modul auf Ihrem Computer zu deinstallieren.
Abmeldung von Ihrer Azure PowerShell-Sitzung:
Disconnect-AzAccount
Nächste Schritte
In dieser Schnellstartanleitung haben Sie das Resource Graph-Modul zu Ihrer Azure PowerShell-Umgebung hinzugefügt und eine Abfrage ausgeführt. Weitere Informationen finden Sie auf der Seite mit Details zur Abfragesprache.