【问题标题】:Azure cli to filter Instances using tagsAzure cli 使用标签过滤实例
【发布时间】:2021-10-18 04:46:48
【问题描述】:

我正在尝试根据标签过滤实例,但它为我提供了资源组中存在的所有实例。我需要列出具有特定标签的实例。我正在使用以下命令列出具有wknhscale == 'active' 标签的实例,该命令有问题吗?还有其他有效的方法可以实现吗?

az vm list --query '[?tags.wknhscale == 'active'].{Name:name, RG:resourceGroup}' -o table

我正在寻找一个简单的查询来获取带有标签的实例,例如在 gcp 中

gcloud compute instances list --project test --filter='labels.wknhscale:active AND name ~ .*wkn*' --sort-by=creationTimestamp --format='value(name,zone)'

【问题讨论】:

  • 我强烈建议编写一个脚本,a) 调用您的“az vm list”查询,然后 b) 进一步处理返回的文本。事实上,您可能只想在 Powershell 中完成所有工作,它既是“功能齐全的脚本语言”是 Azure API。但我不确定仅通过向 CLI 查询添加参数可以走多远...
  • 您遇到什么问题了吗?

标签: azure azure-cli azure-vm azure-cli2


【解决方案1】:

我能够使用 az graph query 进行查询。谢谢,@azMantas

az graph query -q "Resources |  where type =~ 'Microsoft.Compute/virtualMachines' | where tags['wknhscale']=='active' |  where name startswith 'workernode' | project name | order by name asc" | jq '.data[].name'

【讨论】:

    【解决方案2】:

    我建议为此使用Azure Resource Graph。资源图允许您在 CLI 或门户中使用 Kusto 语言查询所有 Azure 资源(在您有权访问的所有订阅中)。

    【讨论】:

    • 感谢您的回复,我不能从 az vm list 查询中获得相同的结果
    • 感谢您的提示,我能够使用 azure graph query 进行检索
    猜你喜欢
    • 1970-01-01
    • 2017-07-12
    • 1970-01-01
    • 2016-09-13
    • 2017-06-23
    • 1970-01-01
    • 2018-05-16
    • 1970-01-01
    • 2019-04-04
    相关资源
    最近更新 更多