我们如何创建一个新的标签或更新一个已经存在的标签在一个蓝色的资源(VM,DB,函数应用程序)。AWS有create_tags的实例,图像..Is有这样的方式吗?
谢谢
发布于 2019-12-19 04:48:11
您可以使用阿普雷阿皮为蔚蓝资源创建标记,如4c74356b41所述。
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}?api-version=2019-08-01例如,在下面的示例中,我使用az rest cli为我的azure创建了一个标记。
az login --service-principal --username "<clientid>" --password "<clientpassword>" --tenant "<tenantid>"
$subscriptionId ="<subscriptionId >"
$resourceGroupName="<resourceGroupName>"
$uri = "/subscriptions/$subscriptionId/resourcegroups/$resourceGroupName/providers/Microsoft.Sql/servers/levi-sql-server/databases/levi_sql_database?api-version=2019-06-01-preview"
$body = '{\"tags\": {\"name\":\"firstdatabasetag\"},\"location\":\"westcentralus\"}'
az rest --method put --uri $uri --body $body经过测试,我发现一些资源api可能不支持最新的api-version=2019-08-01。上面的api更新数据库标记只支持api-version=2019-06-01-preview和更早版本。但是没有必要出错,如果使用不支持的版本,则会收到支持api版本的警告。
对于调用azure的其他方法,您可以参考这个博客。
还有其他方法,如azure命令(正如Sajeetharan所提到的)和az cli,它们允许您使用它的update命令来设置标记属性。
发布于 2019-12-18 03:17:06
是的,你可以用两种方式来做。
在下面的(i)使用Powershell Cmdlet中添加一个新标记或用新值更新一个已存在的标记。
Set-AzureRmResource -Tag @( @{ Name="tag_name"; Value="tag_value" }) -ResourceId <resource_id>(ii)使用C#
using Microsoft.Azure.Management.Resources;
using Microsoft.Azure.Management.Resources.Models;
//MyResourceOperation implemented interface IResourcesOperations
MyResourceOperation resourceOpertion = new MyResourceOperation();
//Get a resource belonging to a resource group
Resource myResource = resourceOpertion.Get("resourceGroupName", "resourceProviderNamespace", "parentResourcePath", "resourceType", "resourceName", "apiVersion");
//update the assigned tag with a new value
myResource.Tags.Add("tagName", "updatedValue");发布于 2020-06-23 12:23:18
为了弄清楚如何更新特定Azure资源的标记几天,文档还不清楚,并且无法理解如何在这个线程中使用解决方案来实现这一点。
最后,通过运行powershell命令来执行相同的操作(有更好的文档和示例这里,并使用fiddler捕获API调用以确定所使用的格式),最终解决了这个问题。
用我的解决方案更新线程,以便它对其他人有用。
下面链接中的REST文档。我向Azure求助,他们在过去的一周里没有回来。
https://learn.microsoft.com/en-us/rest/api/resources/tags/updateatscope
示例以添加/编辑虚拟机的标记。基本上需要使用补丁操作。PUT操作替换所有现有标记。
贴片https://management.azure.com/subscriptions/>subscriptionIdresourcegrpVM Name
$Body =
{
"operation": "merge",
"properties": {
"tags": {
"testtag": "testvalue",
"testtag2": "",
"existingtag": "updatedtagvalue"
}
}
}
注意:“合并”操作对于合并或编辑标记非常重要。删除用于删除特定现有标记的"Delete“,用新标记替换现有标记的”替换“。
https://stackoverflow.com/questions/59384983
复制相似问题