Руководство. Выполнение запросов Azure Resource Graph в приложении логики Azure
Обозреватель Azure Resource Graph позволяет запрашивать ресурсы в масштабе в подписках, в группах управления и по всему клиенту.
Если вам необходимо периодически опрашивать ресурсы для проверки свойств определенного ресурса или свойств управления и выполнять действия на основе результатов, можно воспользоваться службой Azure Logic Apps.
В этом руководстве описано следующее:
- Создание запроса Azure Resource Graph, который планируется периодически выполнять.
- Создание приложения логики Azure с управляемым удостоверением, назначаемым системой.
- Настройка управляемого удостоверения для доступа к конкретным ресурсам, группам ресурсов и подпискам.
- Автоматизация выполнения запроса Azure Resource Graph путем периодического вызова приложения логики.
Необходимые компоненты
Для работы с этим руководством вам потребуется подписка Azure. Если у вас еще нет подписки Azure, создайте бесплатную учетную запись, прежде чем начать работу.
Написание запроса Azure Resource Graph
Если у вас есть запрос Azure Resource Graph, который вы хотите периодически выполнять, это можно использовать. В этом руководстве мы будем использовать следующий запрос для получения сводных данных о состоянии питания виртуальных машин.
Resources
| where type =~ 'microsoft.compute/virtualmachines'
| extend vmPowerState = tostring(properties.extended.instanceView.powerState.code)
| summarize count() by vmPowerState
Дополнительные сведения см. в разделе "Примеры" — сводка виртуальной машины по состоянию питания.
При настройке приложения логики вы снова используете запрос.
Создание приложения логики
В меню портала выберите Приложения логики или используйте поле поиска Azure в верхней части любой страницы, чтобы найти и выбрать элемент Приложения логики.
Нажмите кнопку "Добавить " в левом верхнем углу экрана и перейдите к созданию приложения логики.
При создании приложения логики убедитесь, что вы выбрали потребление в разделе "Тип плана".
Настройка управляемого удостоверения
Создание управляемого удостоверения, назначаемого системой
В портал Azure перейдите к созданному приложению логики. В левой части страницы выберите Удостоверение. Затем нажмите кнопку назначаемого системой удостоверения, установите состояние "Вкл." и нажмите кнопку "Сохранить".
Добавление назначений ролей в управляемое удостоверение
Чтобы предоставить созданному управляемому удостоверению возможность выполнять запросы в ваших подписках, группах ресурсов и ресурсах, необходимо назначить ему доступ с помощью назначений ролей. Дополнительные сведения о назначении ролей для управляемых удостоверений см. в статье Назначение ролей Azure управляемому удостоверению.
Настройка и запуск приложения логики
В представлении кода приложения логики в портал Azure вставьте следующее:
{
"definition": {
"$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
"actions": {
"HTTP_2": {
"inputs": {
"authentication": {
"type": "ManagedServiceIdentity"
},
"body": {
"query": "Resources | where type =~ 'microsoft.compute/virtualmachines' | extend vmPowerState = tostring(properties.extended.instanceView.powerState.code) | summarize count() by vmPowerState"
},
"headers": {
"Content-Type": "application/json"
},
"method": "POST",
"queries": {
"api-version": "2021-03-01"
},
"uri": "https://management.azure.com/providers/Microsoft.ResourceGraph/resources"
},
"runAfter": {},
"type": "Http"
}
},
"contentVersion": "1.0.0.0",
"outputs": {},
"parameters": {},
"triggers": {
"Recurrence": {
"recurrence": {
"frequency": "Minute",
"interval": 1440
},
"type": "Recurrence"
}
}
},
"parameters": {}
}
Затем перейдите в представление конструктора приложения логики в портал Azure и измените настройку по мере необходимости.
Наконец, сохраните приложение логики и запустите его.
Следующие шаги
В этом руководстве мы создали приложение логики Azure, которое автоматизирует запросы ARG с заданным интервалом. Чтобы узнать больше о языке графа ресурсов, перейдите на страницу сведений о языке запросов и попробуйте дополнительные запросы Azure Resource Graph.
Если у вас есть вопросы, обратитесь к resourcegraphsupport@microsoft.com