【问题标题】:How to bulk update a particular Tag in Azure on the basis of Subscription, Region and another tag?如何根据订阅、区域和另一个标签批量更新 Azure 中的特定标签?
【发布时间】:2021-01-13 10:21:38
【问题描述】:

我需要批量更新应用于 Azure 中各种资源(如 VM、NSG、AGW、RG 等)的特定标记。我需要为应用它们的所有类型的资源更新此标签。我该怎么做?我需要根据订阅、区域和另一个标签值过滤资源吗?我可以使用 AZ CLI 或 Azure Powershell,如果可以,如何使用?如何为批量标签更新添加订阅、区域和另一个标签值的过滤器?

【问题讨论】:

    标签: azure powershell command-line-interface azure-powershell tagging


    【解决方案1】:

    要使用订阅进行过滤,您需要使用Set-AzContext 设置特定订阅,因为azure powershell 只能针对一个订阅运行,要查看您登录的帐户可以访问的订阅,您可以使用Get-AzSubscription

    然后你可以使用区域和另一个标签值进行过滤,获取它们后,通过Update-AzTag更新它们的标签。

    Connect-AzAccount
    Set-AzContext -Subscription "<subscription-id>"
    $resources = Get-AzResource -TagName "tag1" -TagValue "value1" | Where-Object {$_.Location -eq 'centralus'}
    $Tags = @{"tag1"="value1"; "tag2"="value2";}
    $resources | ForEach-Object {
        Update-AzTag -ResourceId $_.ResourceId -Tag $Tags -Operation Merge
    }
    

    【讨论】:

      【解决方案2】:

      您可以使用 Azure PowerShell:

      $mergedTags = @{"key1"="value1"; "key3"="value3";}
      Update-AzTag -ResourceId /subscriptions/{subId} -Tag $mergedTags -Operation Merge
      

      原始文档:https://docs.microsoft.com/en-us/powershell/module/az.resources/update-aztag?view=azps-5.3.0

      或 Az Cli: https://docs.microsoft.com/en-us/cli/azure/tag?view=azure-cli-latest

      【讨论】:

      • 是的,但是我需要根据Region和另一个标签值来过滤资源,这是主要的。
      • @Chaitanya 知道了!:Get-AzResource -TagName "Jira" | ... 或 Get-AzResource -TagValue "Value" | .... 或 Get-AzResource | {$_.Location -eq "eastus"} | ...
      • 我写了一个管道,cmon。 powershell 是这样工作的,首先是获取某些东西的命令,然后是管道 | ,然后设置/更新一些东西。
      • 你能分享/发布那个吗?
      猜你喜欢
      • 2018-12-15
      • 1970-01-01
      • 2013-11-23
      • 2020-05-27
      • 2020-08-29
      • 1970-01-01
      • 1970-01-01
      • 2019-03-09
      • 2021-06-04
      相关资源
      最近更新 更多