快速入门:使用 ARM 模板创建 Resource Graph 共享查询
在本快速入门中,你将使用 Azure 资源管理器模板(ARM 模板)创建 Resource Graph 共享查询。 可以将 Resource Graph 查询另存为专用查询或共享查询。 专用查询保存到个人门户配置文件中,不显示给其他人。 共享查询是一个资源管理器对象,可通过权限和基于角色的访问权限与他人共享。 可以通过共享查询以通用且一致的方式执行资源发现操作。
Azure 资源管理器模板是定义项目基础结构和配置的 JavaScript 对象表示法 (JSON) 文件。 模板使用声明性语法。 你可以在不编写用于创建部署的编程命令序列的情况下,描述预期部署。
如果你的环境满足先决条件,并且你熟悉如何使用 ARM 模板,请选择“部署到 Azure”按钮。 模板将在 Azure 门户中打开。
如果没有 Azure 订阅,请在开始前创建一个试用版订阅帐户。
在本快速入门中,我们创建一个名为“按 OS 进行 VM 计数”的共享查询。 若要在 SDK 或门户中使用 Resource Graph 资源管理器尝试此查询,请转到示例 - 按 OS 类型对虚拟机进行计数。
本快速入门中使用的模板来自 Azure 快速启动模板。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.6.1.6515",
"templateHash": "3085789505121407565"
}
},
"parameters": {
"queryName": {
"type": "string",
"defaultValue": "Count VMs by OS",
"metadata": {
"description": "The name of the shared query."
}
},
"queryCode": {
"type": "string",
"defaultValue": "Resources | where type =~ 'Microsoft.Compute/virtualMachines' | summarize count() by tostring(properties.storageProfile.osDisk.osType)",
"metadata": {
"description": "The Azure Resource Graph query to be saved to the shared query."
}
},
"queryDescription": {
"type": "string",
"defaultValue": "This shared query counts all virtual machine resources and summarizes by the OS type.",
"metadata": {
"description": "The description of the saved Azure Resource Graph query."
}
}
},
"resources": [
{
"type": "Microsoft.ResourceGraph/queries",
"apiVersion": "2018-09-01-preview",
"name": "[parameters('queryName')]",
"location": "global",
"properties": {
"query": "[parameters('queryCode')]",
"description": "[parameters('queryDescription')]"
}
}
]
}
模板中定义的资源为 Microsoft.ResourceGraph/queries
选择下图登录到 Azure 门户并打开模板:
选择或输入以下值:
名称 值 订阅 选择 Azure 订阅。 资源组 选择“新建”,指定名称,然后选择“确定”。 或者,选择现有资源组。 位置 选择区域。 例如,中国北部。 查询名称 使用默认值“按 OS 对 VM 计数”。 查询代码 使用默认值: Resources | where type =~ 'Microsoft.Compute/virtualMachines' | summarize count() by tostring(properties.storageProfile.osDisk.osType)
查询说明 使用默认值“此共享查询对所有虚拟机资源计数,并按 OS 类型进行汇总。” 选择“查看 + 创建”。
选择“创建”。
其他一些资源:
若要查找更多示例模板,请参阅浏览代码示例。
若要了解如何开发 ARM 模板,请参阅 Azure 资源管理器文档。
若要了解订阅级部署,请参阅在订阅级别创建资源组和资源。
若要运行新的共享查询,请执行以下步骤:
- 在门户搜索栏中,搜索“Resource Graph 查询”并将其选中。
- 选择名为“按 OS 进行 VM 计数”的共享查询,然后在“概览”页上选择“结果”选项卡。
也可在 Resource Graph 资源管理器中打开共享查询:
- 在门户搜索栏中,搜索“Resource Graph 资源管理器”并将其选中。
- 选择“打开查询”。
- 将“类型”更改为“共享查询”。 如果未在列表中看到“按 OS 对 VM 计数”,请使用筛选器框通过“订阅”或“资源组”来限制结果。 当“按 OS 对 VM 计数”共享查询可见后,请选择其名称。
- 选择“运行查询”,结果将显示在“结果”选项卡中。
在 Resource Graph 资源管理器页面的左侧,可以将“范围”更改为使用“目录”、“管理组”或“订阅”。
若要删除创建的共享查询,请执行以下步骤:
- 在门户搜索栏中,搜索“Resource Graph 查询”并将其选中。
- 选中名为“按 OS 进行 VM 计数”的共享查询旁边的复选框。
- 选择“删除”。
- 输入“删除”,然后选择“删除”。
- 从确认提示中选择“删除”。
在本快速入门中,你已创建一个 Resource Graph 共享查询。 若要详细了解 Resource Graph 语言,请继续阅读查询语言详细信息页。