Поделиться через


Применение тегов с помощью Azure CLI

В этой статье описывается, как использовать Azure CLI для тегов ресурсов, групп ресурсов и подписок. Рекомендации по тегам и ограничения см. в разделе "Использование тегов для организации ресурсов Azure и иерархии управления".

Применение тегов

Azure CLI предлагает две команды для применения тегов: az tag create и az tag update. Необходимо иметь Azure CLI версии 2.10.0 или более поздней. Вы можете проверить вашу версию с помощью az version. Чтобы обновить или установить его, см. статью "Установка Azure CLI".

Он az tag create заменяет все теги в ресурсе, группе ресурсов или подписке. При вызове команды передайте идентификатор ресурса сущности, которую вы хотите пометить.

В следующем примере к учетной записи хранения применяется набор тегов:

resource=$(az resource show -g demoGroup -n demostorage --resource-type Microsoft.Storage/storageAccounts --query "id" --output tsv)
az tag create --resource-id $resource --tags Dept=Finance Status=Normal

Когда команда завершится, обратите внимание, что ресурс имеет два тега.

"properties": {
  "tags": {
    "Dept": "Finance",
    "Status": "Normal"
  }
},

Если вы снова выполните команду, но на этот раз с разными тегами обратите внимание, что предыдущие теги исчезают.

az tag create --resource-id $resource --tags Team=Compliance Environment=Production
"properties": {
  "tags": {
    "Environment": "Production",
    "Team": "Compliance"
  }
},

Чтобы добавить теги в ресурс, который уже имеет теги, используйте az tag update. Установите для параметра --operation значение Merge.

az tag update --resource-id $resource --operation Merge --tags Dept=Finance Status=Normal

Обратите внимание, что существующие теги растут с добавлением двух новых тегов.

"properties": {
  "tags": {
    "Dept": "Finance",
    "Environment": "Production",
    "Status": "Normal",
    "Team": "Compliance"
  }
},

Каждое имя тега может иметь только одно значение. Если вы предоставляете новое значение для тега, новый тег заменяет старое значение, даже если используется операция слияния. В следующем примере тег изменяется с Status" на зеленый.

az tag update --resource-id $resource --operation Merge --tags Status=Green
"properties": {
  "tags": {
    "Dept": "Finance",
    "Environment": "Production",
    "Status": "Green",
    "Team": "Compliance"
  }
},

При установке --operation параметра Replaceновый набор тегов заменяет существующие теги.

az tag update --resource-id $resource --operation Replace --tags Project=ECommerce CostCenter=00123 Team=Web

В ресурсе остаются только новые теги.

"properties": {
  "tags": {
    "CostCenter": "00123",
    "Project": "ECommerce",
    "Team": "Web"
  }
},

Те же команды также работают с группами ресурсов или подписками. Передайте теги в идентификатор группы ресурсов или подписки, которую вы хотите отметить.

Чтобы добавить новый набор тегов в группу ресурсов, используйте:

group=$(az group show -n demoGroup --query id --output tsv)
az tag create --resource-id $group --tags Dept=Finance Status=Normal

Чтобы обновить теги для группы ресурсов, используйте следующую команду:

az tag update --resource-id $group --operation Merge --tags CostCenter=00123 Environment=Production

Чтобы добавить новый набор тегов в подписку, используйте следующее:

sub=$(az account show --subscription "Demo Subscription" --query id --output tsv)
az tag create --resource-id /subscriptions/$sub --tags CostCenter=00123 Environment=Dev

Чтобы обновить теги для подписки, используйте следующую команду:

az tag update --resource-id /subscriptions/$sub --operation Merge --tags Team="Web Apps"

Список тегов

Чтобы получить теги для ресурса, группы ресурсов или подписки, используйте команду az tag list и передайте идентификатор ресурса сущности.

Чтобы просмотреть теги ресурса, используйте следующую команду:

resource=$(az resource show -g demoGroup -n demostorage --resource-type Microsoft.Storage/storageAccounts --query "id" --output tsv)
az tag list --resource-id $resource

Чтобы просмотреть теги для группы ресурсов, используйте следующую команду:

group=$(az group show -n demoGroup --query id --output tsv)
az tag list --resource-id $group

Чтобы просмотреть теги подписки, используйте следующую команду:

sub=$(az account show --subscription "Demo Subscription" --query id --output tsv)
az tag list --resource-id /subscriptions/$sub

Список по тегу

Чтобы получить ресурсы с определенным именем и значением тега, используйте:

az resource list --tag CostCenter=00123 --query [].name

Чтобы получить ресурсы с определенным именем тега с любым значением тега, используйте:

az resource list --tag Team --query [].name

Чтобы получить группы ресурсов с определенным именем и значением тега, используйте:

az group list --tag Dept=Finance

Удалить теги

Чтобы удалить определенные теги, используйте az tag update и задайте для него значение --operationDelete. Передайте идентификатор ресурса тегов, которые необходимо удалить.

az tag update --resource-id $resource --operation Delete --tags Project=ECommerce Team=Web

Вы удалили указанные теги.

"properties": {
  "tags": {
    "CostCenter": "00123"
  }
},

Чтобы удалить все теги, используйте команду az tag delete .

az tag delete --resource-id $resource

Обработка пробелов

Если имена тегов или значения включают пробелы, заключите их в кавычки.

az tag update --resource-id $group --operation Merge --tags "Cost Center"=Finance-1222 Location="West US"

Дальнейшие шаги