Teilen über


Anwenden von Tags mit Azure PowerShell

In diesem Artikel wird beschrieben, wie Sie Azure PowerShell zum Kategorisieren von Ressourcen, Ressourcengruppen und Abonnements verwenden. Für Empfehlungen und Einschränkungen von Tags siehe Verwenden von Tags zum Organisieren Ihrer Azure-Ressourcen und der Verwaltungshierarchie.

Tags anwenden

Azure PowerShell bietet zwei Befehle zum Anwenden von Tags: New-AzTag und Update-AzTag. Sie müssen über die Az.Resources Modul 1.12.0-Version oder höher verfügen. Sie können Ihre Version überprüfen mit Get-InstalledModule -Name Az.Resources. Sie können dieses Modul installieren oder Azure PowerShell , Version 3.6.1 oder höher, installieren.

Dies New-AzTag ersetzt alle Tags für die Ressource, die Ressourcengruppe oder das Abonnement. Wenn Sie den Befehl aufrufen, übergeben Sie die Ressourcen-ID der Entität, die Sie kategorisieren möchten.

Im folgenden Beispiel wird eine Reihe von Tags auf ein Speicherkonto angewendet:

$tags = @{"Dept"="Finance"; "Status"="Normal"}
$resource = Get-AzResource -Name demostorage -ResourceGroup demoGroup
New-AzTag -ResourceId $resource.id -Tag $tags

Wenn der Befehl abgeschlossen ist, beachten Sie, dass die Ressource über zwei Tags verfügt.

Properties :
        Name    Value
        ======  =======
        Dept    Finance
        Status  Normal

Wenn Sie den Befehl erneut ausführen, aber diesmal mit verschiedenen Tags, beachten Sie, dass die früheren Tags ausgeblendet werden.

$tags = @{"Team"="Compliance"; "Environment"="Production"}
$resource = Get-AzResource -Name demostorage -ResourceGroup demoGroup
New-AzTag -ResourceId $resource.id -Tag $tags
Properties :
        Name         Value
        ===========  ==========
        Environment  Production
        Team         Compliance

Verwenden Sie Update-AzTagzum Hinzufügen von Tags zu einer Ressource, die bereits Tags enthält. Setzen Sie den -Operation-Parameter auf Merge.

$tags = @{"Dept"="Finance"; "Status"="Normal"}
$resource = Get-AzResource -Name demostorage -ResourceGroup demoGroup
Update-AzTag -ResourceId $resource.id -Tag $tags -Operation Merge

Beachten Sie, dass die vorhandenen Tags mit dem Hinzufügen der beiden neuen Tags wachsen.

Properties :
        Name         Value
        ===========  ==========
        Status       Normal
        Dept         Finance
        Team         Compliance
        Environment  Production

Jeder Tagname darf nur einen Wert aufweisen. Wenn Sie einen neuen Wert für ein Tag angeben, wird der alte Wert auch dann ersetzt, wenn Sie den Zusammenführungsvorgang verwenden. Im folgenden Beispiel wird das Status-Tag von „Normal“ in „Grün“ geändert.

$tags = @{"Status"="Green"}
$resource = Get-AzResource -Name demostorage -ResourceGroup demoGroup
Update-AzTag -ResourceId $resource.id -Tag $tags -Operation Merge
Properties :
        Name         Value
        ===========  ==========
        Status       Green
        Dept         Finance
        Team         Compliance
        Environment  Production

Wenn Sie den -Operation Parameter auf Replace festlegen, ersetzt der neue Satz von Tags die vorhandenen Tags.

$tags = @{"Project"="ECommerce"; "CostCenter"="00123"; "Team"="Web"}
$resource = Get-AzResource -Name demostorage -ResourceGroup demoGroup
Update-AzTag -ResourceId $resource.id -Tag $tags -Operation Replace

Nur die neuen Tags verbleiben in der Ressource.

Properties :
        Name        Value
        ==========  =========
        CostCenter  00123
        Team        Web
        Project     ECommerce

Dieselben Befehle funktionieren auch mit Ressourcengruppen oder Abonnements. Geben Sie sie im Bezeichner der Ressourcengruppe oder des Abonnements an, die Sie taggen möchten.

Wenn Sie einer Ressourcengruppe einen neuen Satz von Tags hinzufügen möchten, verwenden Sie Folgendes:

$tags = @{"Dept"="Finance"; "Status"="Normal"}
$resourceGroup = Get-AzResourceGroup -Name demoGroup
New-AzTag -ResourceId $resourceGroup.ResourceId -tag $tags

Um die Tags für eine Ressourcengruppe zu aktualisieren, verwenden Sie Folgendes:

$tags = @{"CostCenter"="00123"; "Environment"="Production"}
$resourceGroup = Get-AzResourceGroup -Name demoGroup
Update-AzTag -ResourceId $resourceGroup.ResourceId -Tag $tags -Operation Merge

Wenn Sie einem Abonnement einen neuen Satz von Tags hinzufügen möchten, verwenden Sie Folgendes:

$tags = @{"CostCenter"="00123"; "Environment"="Dev"}
$subscription = (Get-AzSubscription -SubscriptionName "Example Subscription").Id
New-AzTag -ResourceId "/subscriptions/$subscription" -Tag $tags

Um die Tags für ein Abonnement zu aktualisieren, verwenden Sie Folgendes:

$tags = @{"Team"="Web Apps"}
$subscription = (Get-AzSubscription -SubscriptionName "Example Subscription").Id
Update-AzTag -ResourceId "/subscriptions/$subscription" -Tag $tags -Operation Merge

Möglicherweise verfügen Sie über mehrere Ressourcen mit demselben Namen in einer Ressourcengruppe. In diesem Fall können Sie jede Ressource mit den folgenden Befehlen festlegen:

$resource = Get-AzResource -ResourceName sqlDatabase1 -ResourceGroupName examplegroup
$resource | ForEach-Object { Update-AzTag -Tag @{ "Dept"="IT"; "Environment"="Test" } -ResourceId $_.ResourceId -Operation Merge }

Auflisten von Tags

Um die Tags für eine Ressource, eine Ressourcengruppe oder ein Abonnement abzurufen, verwenden Sie den Befehl "Get-AzTag ", und übergeben Sie die Ressourcen-ID der Entität.

Um die Tags für eine Ressource anzuzeigen, verwenden Sie Folgendes:

$resource = Get-AzResource -Name demostorage -ResourceGroup demoGroup
Get-AzTag -ResourceId $resource.id

Um die Tags für eine Ressourcengruppe anzuzeigen, verwenden Sie Folgendes:

$resourceGroup = Get-AzResourceGroup -Name demoGroup
Get-AzTag -ResourceId $resourceGroup.ResourceId

Um die Tags für ein Abonnement anzuzeigen, verwenden Sie Folgendes:

$subscription = (Get-AzSubscription -SubscriptionName "Example Subscription").Id
Get-AzTag -ResourceId "/subscriptions/$subscription"

Nach Tags sortieren

Verwenden Sie Folgendes, um Ressourcen mit einem bestimmten Tagnamen und -wert abzurufen:

(Get-AzResource -Tag @{ "CostCenter"="00123"}).Name

Um Ressourcen mit einem bestimmten Tagnamen mit einem beliebigen Tagwert abzurufen, verwenden Sie Folgendes:

(Get-AzResource -TagName "Dept").Name

Verwenden Sie Folgendes, um Ressourcengruppen mit einem bestimmten Tagnamen und -wert abzurufen:

(Get-AzResourceGroup -Tag @{ "CostCenter"="00123" }).ResourceGroupName

Entfernen von Tags

Um bestimmte Tags zu entfernen, verwenden Sie den Befehl Update-AzTag, und legen Sie -Operation auf Delete fest. Übergeben Sie die Ressourcen-IDs der Zu löschenden Tags.

$removeTags = @{"Project"="ECommerce"; "Team"="Web"}
$resource = Get-AzResource -Name demostorage -ResourceGroup demoGroup
Update-AzTag -ResourceId $resource.id -Tag $removeTags -Operation Delete

Die angegebenen Tags werden entfernt.

Properties :
        Name        Value
        ==========  =====
        CostCenter  00123

Verwenden Sie den Befehl "Remove-AzTag ", um alle Tags zu entfernen.

$subscription = (Get-AzSubscription -SubscriptionName "Example Subscription").Id
Remove-AzTag -ResourceId "/subscriptions/$subscription"

Nächste Schritte