你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

快速入门:使用 Azure CLI 运行 Resource Graph 查询

本快速入门介绍如何使用 Azure CLI 和 Resource Graph 扩展运行 Azure Resource Graph 查询。 本文还演示如何对查询结果进行排序和限定。 可以针对租户、管理组或订阅中的资源运行查询。 完成后,可以删除扩展。

先决条件

  • 如果没有 Azure 帐户,请在开始前创建一个免费帐户
  • Azure CLI 必须是 Resource Graph 扩展的 2.22.0 或更高版本。
  • 可在其中运行 Azure CLI 命令的 Bash shell 环境。 例如,在 Visual Studio Code 终端会话中的 Git Bash。

连接到 Azure

从 Visual Studio Code 终端会话连接到 Azure。 如果具有多个订阅,请运行命令以将上下文设置为你的订阅。 将 <subscriptionID> 替换为你的 Azure 订阅 ID。

az login

# Run these commands if you have multiple subscriptions
az account list --output table
az account set --subscription <subscriptionID>

安装扩展

若要使 Azure CLI 能够使用 Azure Resource Graph 查询资源,必须安装 Resource Graph 扩展。 首次运行带有 az graph 的查询时,会显示一个安装扩展的提示。 否则,请使用以下步骤进行手动安装。

  1. 列出可用的扩展和版本:

    az extension list-available --output table
    
  2. 安装扩展:

    az extension add --name resource-graph
    
  3. 验证是否已安装扩展:

    az extension list --output table
    
  4. 显示扩展的语法:

    az graph query --help
    

    有关 Azure CLI 扩展详细信息,请转到使用和管理 Azure CLI 的扩展

运行查询

将 Azure CLI 扩展添加到环境后,可以运行基于租户的查询。 此示例中的查询返回五个 Azure 资源,其中包含每个资源的 nametype。 若要按管理组或订阅进行查询,请使用 --management-groups--subscriptions 参数。

  1. 运行 Azure Resource Graph 查询:

    az graph query --graph-query 'Resources | project name, type | limit 5'
    

    此查询示例不使用排序修饰符,如 order by。 如果多次运行查询,每次请求可能会产生一组不同的资源。

  2. 更新查询以 order by name 属性:

    az graph query --graph-query 'Resources | project name, type | limit 5 | order by name asc'
    

    与前一个查询一样,如果多次运行此查询,可能会为每个请求生成一组不同的资源。 查询命令的顺序非常重要。 在本例中,order by 位于 limit 之后。 查询将结果限制为五个资源,然后按名称对这些结果进行排序。

  3. 更新查询以 order by name 属性,然后将输出 limit 为五个结果:

    az graph query --graph-query 'Resources | project name, type | order by name asc | limit 5'
    

    如果在不改变环境的情况下多次运行此查询,结果将保持一致,并按 name 属性排序,但仍仅限于五个结果。 查询按名称对结果进行排序,然后将输出限制为五个资源。

清理资源

若要删除 Resource Graph 扩展,请运行以下命令:

az extension remove --name resource-graph

若要退出登录 Azure CLI 会话,请执行以下操作:

az logout

后续步骤

在本快速入门中,使用 Azure CLI 的扩展运行了 Azure Resource Graph 查询。 若要了解详细信息,请转到查询语言详细信息文章。