Schnellstart: Ausführen Ihrer ersten Resource Graph-Abfrage mit Azure PowerShell

Wenn Sie Azure Resource Graph verwenden möchten, müssen Sie sich zunächst vergewissern, dass das Modul für Azure PowerShell installiert ist. Dieser Schnellstart führt Sie durch das Hinzufügen des Moduls zu Ihrer Azure PowerShell-Installation.

Am Ende dieses Prozesses haben Sie das Modul zu Ihrer Azure PowerShell-Installation hinzugefügt und Ihre erste Resource Graph-Abfrage ausgeführt.

Voraussetzungen

Wenn Sie kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.

Azure Cloud Shell

Azure hostet Azure Cloud Shell, eine interaktive Shell-Umgebung, die Sie über Ihren Browser nutzen können. Sie können entweder Bash oder PowerShell mit Cloud Shell verwenden, um mit Azure-Diensten zu arbeiten. Sie können die vorinstallierten Befehle von Cloud Shell verwenden, um den Code in diesem Artikel auszuführen, ohne etwas in Ihrer lokalen Umgebung installieren zu müssen.

Starten von Azure Cloud Shell:

Option Beispiel/Link
Wählen Sie rechts oben in einem Code- oder Befehlsblock die Option Ausprobieren aus. Durch die Auswahl von Ausprobieren wird der Code oder Befehl nicht automatisch in Cloud Shell kopiert. Screenshot that shows an example of Try It for Azure Cloud Shell.
Rufen Sie https://shell.azure.com auf, oder klicken Sie auf die Schaltfläche Cloud Shell starten, um Cloud Shell im Browser zu öffnen. Button to launch Azure Cloud Shell.
Wählen Sie im Azure-Portal rechts oben im Menü die Schaltfläche Cloud Shell aus. Screenshot that shows the Cloud Shell button in the Azure portal

So verwenden Sie Azure Cloud Shell:

  1. Starten Sie Cloud Shell.

  2. Wählen Sie die Schaltfläche Kopieren für einen Codeblock (oder Befehlsblock) aus, um den Code oder Befehl zu kopieren.

  3. Fügen Sie den Code oder Befehl mit STRG+UMSCHALT+V unter Windows und Linux oder CMD+UMSCHALT+V unter macOS in die Cloud Shell-Sitzung ein.

  4. Drücken Sie die EINGABETASTE, um den Code oder Befehl auszuführen.

Hinzufügen des Resource Graph-Moduls

Um Azure PowerShell für die Abfrage von Azure Resource Graph zu aktivieren, muss das Modul hinzugefügt werden. Dieses Modul kann mit einer lokal installierten PowerShell-Instanz, mit Azure Cloud Shell oder mit dem PowerShell-Docker-Image verwendet werden.

Basisanforderungen

Das Azure Resource Graph-Modul setzt folgende Software voraus:

  • Azure PowerShell 1.0.0 oder höher. Falls es noch nicht installiert ist, befolgen Sie diese Anweisungen.

  • PowerShellGet 2.0.1 oder höher. Falls es nicht installiert oder aktuell ist, befolgen Sie diese Anweisungen.

Installieren des Moduls

Das Resource Graph-Modul für PowerShell ist Az.ResourceGraph.

  1. Führen Sie an einer Administratoreingabeaufforderung von PowerShell den folgenden Befehl aus:

    # Install the Resource Graph module from PowerShell Gallery
    Install-Module -Name Az.ResourceGraph
    
  2. Vergewissern Sie sich, dass das Modul importiert wurde und mindestens Version 0.11.0 aufweist:

    # Get a list of commands for the imported Az.ResourceGraph module
    Get-Command -Module 'Az.ResourceGraph' -CommandType 'Cmdlet'
    

Ausführen Ihrer ersten Resource Graph-Abfrage

Nachdem das Azure PowerShell-Modul Ihrer gewünschten Umgebung hinzugefügt wurde, können Sie eine einfache mandantenbasierte Resource Graph-Abfrage ausprobieren. Die Abfrage gibt die ersten fünf Azure-Ressourcen mit dem Namen und Ressourcentyp der einzelnen Ressourcen zurück. Verwenden Sie für eine Abfrage nach Verwaltungsgruppe oder Abonnement die Parameter -ManagementGroup oder -Subscription.

  1. Führen Sie Ihre erste Azure Resource Graph-Abfrage mit dem Search-AzGraph-Cmdlet aus:

    # Login first with Connect-AzAccount if not using Cloud Shell
    
    # Run Azure Resource Graph query
    Search-AzGraph -Query 'Resources | project name, type | limit 5'
    

    Hinweis

    Da dieses Abfragebeispiel keinen Sortierungsmodifizierer wie order by umfasst, ergibt die mehrfache Ausführung dieser Abfrage unter Umständen pro Anforderung einen anderen Satz von Ressourcen.

  2. Aktualisieren Sie die Abfrage auf order by der Eigenschaft Name:

    # Run Azure Resource Graph query with 'order by'
    Search-AzGraph -Query 'Resources | project name, type | limit 5 | order by name asc'
    

    Hinweis

    Genau wie bei der ersten Abfrage ergibt die mehrfache Ausführung dieser Abfrage vermutlich pro Anforderung einen anderen Satz von Ressourcen. Die Reihenfolge der Abfragebefehle ist wichtig. In diesem Beispiel kommt order by nach limit. Durch diese Befehlsreihenfolge werden die Abfrageergebnisse zuerst eingeschränkt und dann sortiert.

  3. Aktualisieren Sie die Abfrage, sodass zuerst eine Sortierung (order by) nach der Eigenschaft Name vorgenommen wird, und begrenzen Sie die Ergebnisse mithilfe von limit auf die fünf relevantesten Ergebnisse:

    # Store the query in a variable
    $query = 'Resources | project name, type | order by name asc | limit 5'
    
    # Run Azure Resource Graph query with `order by` first, then with `limit`
    Search-AzGraph -Query $query
    

Wenn die letzte Abfrage mehrmals ausgeführt wird und in Ihrer Umgebung keine Änderungen auftreten, sind die zurückgegebenen Ergebnisse konsistent und nach der Eigenschaft Name sortiert, aber immer noch auf die ersten fünf Ergebnisse begrenzt.

Hinweis

Beachten Sie, dass das Cmdlet Search-AzGraph standardmäßig Abonnements im Standardkontext verwendet, wenn die 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

Wenn Sie das Resource Graph-Modul aus der Azure PowerShell-Umgebung entfernen möchten, verwenden Sie hierfür folgenden Befehl:

# Remove the Resource Graph module from the current session
Remove-Module -Name 'Az.ResourceGraph'

# Uninstall the Resource Graph module from the environment
Uninstall-Module -Name 'Az.ResourceGraph'

Hinweis

Dies löscht nicht die zuvor heruntergeladene Moduldatei. Sie wird nur aus der ausgeführten PowerShell-Umgebung entfernt.

Nächste Schritte

In dieser Schnellstartanleitung haben Sie das Resource Graph-Modul zu ihrer Azure PowerShell-Umgebung hinzugefügt und Ihre erste Abfrage ausgeführt. Wenn Sie mehr über die Resource Graph-Sprache erfahren möchten, fahren Sie mit der Seite mit den Details zur Abfragesprache fort.